Chronon - Time Travelling Debugger
- Prashant Deva
- Media:Chronon - JVMSummit.pdf
Chronon is a flight data recorder for Java programs. It literally records every method call, assignment, exception, and every other meaningful line of code on the fly. All with minimal performance impact. This essentially means the end of non-reproducible bugs. A bug report is now a single recording file that tells you everything that happened while recording.
We have a very slick 'time traveling debugger' (an Eclipse plug-in) that feeds off the recordings. Among things like stepping both forward and backward in time, it can also show you the history of changes to every variable, every method call, and so on. If you click on a line of output, it will take you back to the moment in time / line of code where that output was generated. Chronon can also turn recording on/off dynamically in a running JVM.