From 00593a517ca4b6e3df38743da485c726f3aa59eb Mon Sep 17 00:00:00 2001 From: Hannah Hunter Date: Thu, 21 Dec 2023 12:33:47 -0500 Subject: [PATCH 1/2] cross link for debugging and viewing logs Signed-off-by: Hannah Hunter --- .../debugging/debug-k8s/debug-daprd.md | 8 +++++++- .../en/operations/troubleshooting/logs-troubleshooting.md | 2 ++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md b/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md index 3b13efc5aeb..283f8f3c75c 100644 --- a/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md +++ b/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md @@ -11,7 +11,7 @@ description: "How to debug the Dapr sidecar (daprd) on your Kubernetes cluster" Sometimes it is necessary to understand what's going on in the Dapr sidecar (daprd), which runs as a sidecar next to your application, especially when you diagnose your Dapr application and wonder if there's something wrong in Dapr itself. Additionally, you may be developing a new feature for Dapr on Kubernetes and want to debug your code. -his guide will cover how to use built-in Dapr debugging to debug the Dapr sidecar in your Kubernetes pods. +This guide covers how to use built-in Dapr debugging to debug the Dapr sidecar in your Kubernetes pods. To learn how to view logs and troubleshoot Dapr in Kubernetes, see the [Configure and view Dapr logs guide]({{< ref "logs-troubleshooting.md#logs-in-kubernetes-mode" >}}) ## Pre-requisites @@ -87,6 +87,12 @@ Forwarding from [::1]:40000 -> 40000 All done. Now you can point to port 40000 and start a remote debug session to daprd from your favorite IDE. +## Watch the demo + +See the presentation on troubleshooting Dapr on Kubernetes in the [Dapr Community Call #36](https://youtu.be/pniLPRbuLD8?si=bGid7oYSp9cThtiI&t=838). + + + ## Related links - [Overview of Dapr on Kubernetes]({{< ref kubernetes-overview >}}) diff --git a/daprdocs/content/en/operations/troubleshooting/logs-troubleshooting.md b/daprdocs/content/en/operations/troubleshooting/logs-troubleshooting.md index d2316a1fd84..14eb822c194 100644 --- a/daprdocs/content/en/operations/troubleshooting/logs-troubleshooting.md +++ b/daprdocs/content/en/operations/troubleshooting/logs-troubleshooting.md @@ -73,6 +73,8 @@ dapr run node myapp.js ## Logs in Kubernetes mode +> [Learn how to debug `daprd` on Kubernetes.]({{< ref "debug-daprd.md" >}}) + You can set the log level individually for every sidecar by providing the following annotation in your pod spec template: ```yml From 3cac886e6b90f6f9be24e573bf54d231b06eb96d Mon Sep 17 00:00:00 2001 From: Hannah Hunter Date: Thu, 21 Dec 2023 14:53:45 -0500 Subject: [PATCH 2/2] add debug commands Signed-off-by: Hannah Hunter --- .../debugging/debug-k8s/debug-daprd.md | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md b/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md index 283f8f3c75c..24aca6c85a4 100644 --- a/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md +++ b/daprdocs/content/en/developing-applications/debugging/debug-k8s/debug-daprd.md @@ -87,6 +87,56 @@ Forwarding from [::1]:40000 -> 40000 All done. Now you can point to port 40000 and start a remote debug session to daprd from your favorite IDE. +## Commonly used `kubectl` commands + +Use the following common `kubectl` commands when debugging daprd and applications running on Kubernetes. + +Get all pods, events, and services: + +```bash +kubectl get all +kubectl get all --n +kubectl get all --all-namespaces +``` + +Get each specifically: + +```bash +kubectl get pods +``` + +```bash +kubectl get events --n +kubectl get events --sort-by=.metadata.creationTimestamp --n +``` + +```bash +kubectl get services +``` + +Check logs: + +```bash +kubectl logs daprd +kubectl logs +kuebctl logs daprd +kubectl logs +``` + +```bash +kubectl describe pod +kubectl describe deploy +kubectl describe replicaset +``` + +Restart a pod by running the following command: + +```bash +kubectl delete pod +``` + +This causes the `replicaset` controller to restart the pod after the delete. + ## Watch the demo See the presentation on troubleshooting Dapr on Kubernetes in the [Dapr Community Call #36](https://youtu.be/pniLPRbuLD8?si=bGid7oYSp9cThtiI&t=838).