Squash: A Debugger for Kubernetes Apps
summary
A Kubernetes debugger that wires existing debuggers into clusters, Squash attaches gdb and dlv sessions to pods via a daemonset client and a server proxy, exposes a Visual Studio Code extension, and demos stepping across two Go microservices and editing a variable live to fix a bug without redeploying. It maps container PID namespaces by reading /proc mounts and inodes, works with Envoy/service-mesh to debug a service (not just a container), and currently targets Kubernetes with limitations for non-running containers.
AI-written summary · about
chapters (26)
- 0:00Introduction
- 0:44The Problem
- 2:19Open Tracing
- 3:11Logging
- 4:27Weakness
- 8:48Demo
- 12:58Overview
- 13:58Extension Flow
- 14:45Quest
- 16:15What do we need
- 16:46How we did it
- 18:09Limitations
- 18:28Squash Client
- 18:52Microservices
- 19:17Crossclass
- 19:47Open Source
- 20:12More Debuggers
- 20:23Platform Specific Interface
- 21:22Debugger
- 21:55Service Measurement
- 22:15Service
- 22:26Solution
- 23:22Envelope
- 24:36Demonstration
- 27:17Improvements
- 28:28Legacy
related talks
40mDebugging in Golang Apps Inside K8s Environment
34mDebugging at Scale in Production - Deep into Your Containers with Kubectl Debug
35mThe Art of Debugging Inside K8s Environment
01h 00mDebug like a pro on Kubernetes
31mDebugging Go: from zero to Kubernetes - Michele Caci
50mTroubleshooting & Debugging Microservices in Kubernetes
24mDebugging at Scale in Production - Deep into your Containers
36mEphemeral Containers in Action - Running a Go Debugger in Kubernetes - Marvin Beckers
