Instantly debug or profile any Python pod on Kubernetes

Open source. Runs in-cluster.

Powered by the troubleshooting platform for Kubernetes

Just copy and paste

OK, you need to install first. But it takes about 60 seconds.

robusta playbooks trigger python_debugger name=podname namespace=default

Python Debugger

Attaches the VSCode Python debugger to a Kubernetes pod
robusta playbooks trigger python_profiler name=podname namespace=default seconds=5

Python CPU Profiler

Runs py-spy on a python pod. Find out which functions are using the most CPU.
robusta playbooks trigger python_memory name=podname namespace=default process_substring=main

Python Memory Profiler

Track down Kubernetes pod memory leaks! Find and fix memory leaks in your Kubernetes Python application. Powered by tracemalloc.

How debugging and profiling Kubernetes Python pods works

  1. Robusta starts a new pod on the same node in the hostPID namespace
  2. It finds the correct process to debug/profile
  3. It runs a diagnostics tool for you on that process

This is all automated using Robusta.

When You Should Profile Python Applications

  1. Your Python program is spending too long inside a function and you want to know which one
  2. You want to check your application's performance without modifying the code or restarting the program
  3. You want to view call stacks

Help us improve