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..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 @@ -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,62 @@ 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). + + + ## 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