Distributed Debugging Toolkit (1997)
Shell scripts and Java utilities for correlating logs, capturing thread dumps, and diagnosing failures across multiple JVMs — from before distributed tracing existed.
debuggingdistributed-systemsjava
Distributed Debugging Toolkit (1997)
Practical tools for diagnosing problems in a distributed Java system — written before Zipkin, before ELK, before distributed tracing was a thing.
Contents
scripts/collect-logs.sh— ssh to all hosts, extract time window, merge and sortscripts/thread-dump.sh— send SIGQUIT to a named JVM processsrc/.../CorrelationId.java— generates and propagates request IDs through callssrc/.../CircularLogBuffer.java— in-memory ring buffer for low-overhead debug logging