Debugging and Troubleshooting Java-based Microservices in Kubernetes
summary
Walks through diagnosing a Java microservice error end-to-end: verify staging vs production, avoid image tag latest, use kubectl describe and kubectl logs with kubetail/stern, query JFrog Artifactory for exact image build, toggle a pod’s label to remove it from service, port‑forward into the pod and attach a debugger, and use Zipkin traces plus centralized logging (ELK or Stackdriver) and the Stackdriver Debugger agent to hot‑add logging and take snapshots; root cause turns out to be an empty name field.
AI-written summary · about
chapters (19)
- 0:00Introduction and speaker intro
- 1:36Microservices architecture overview
- 4:03Deploying microservices in Kubernetes
- 7:24Debugging production errors
- 10:20Staging vs production environments
- 13:47Inspecting container logs
- 17:02Finding error logs in instances
- 19:57Centralized logging with Cloud Logging
- 23:11Analyzing error patterns
- 26:49Restarting unhealthy instances
- 28:17Modifying labels at runtime
- 30:05Debugging with kubectl exec
- 32:38Troubleshooting inter-service connections
- 35:06Distributed tracing with Zipkin
- 39:57Debugging with live agents
- 43:32Adding debug logs dynamically
- 46:34Comparing trace data over time
- 48:00Key troubleshooting tools summary
- 50:16Q&A session
related talks
50mTroubleshooting & Debugging Microservices in Kubernetes
51mTroubleshooting & Debugging Production Microservices in Kubernetes
50mTroubleshooting & Debugging Microservices in Kubernetes
25mKubernetes for Java Developers
43mA Guide to Observability for Your (Java) Apps in K8s
54mJava based microservices, containers, Kubernetes - how to
24mDebugging at Scale in Production - Deep into your Containers
34mDebugging at Scale in Production - Deep into Your Containers with Kubectl Debug
