Technology

What is Chronon?

Chronon is like a DVR for your Java applications.

  1. Chronon records the entire execution of your Java program, from the very beginning to the end of the program.
  2. The recording is saved to a file.
  3. The ‘recording’ file can then be transferred across machines and also shared among team members.
  4. Team members can use the Chronon Recording file to play back the entire execution of the Java program on their desktops and find the root cause of any issues instantly.

Instant Root Cause Detection


The Chronon Time Travelling Debugger along with Post Execution Logging allow you to find the root cause of bugs instantly.

System Independent Recordings


The Chronon Recording files are all you need to playback the execution of your program.

Chronon Recordings are completely System Independent. That means, they are:

  1. Platform Independent
    Eg, You can take a recording from a Linux 64 bit machine, and play it back on a Windows 32 bit machine.
  2. Environment Independent
    You don’t need to have the database, email server, messaging queue or any of the other components of your environment when playing back the Chronon Recordings.
    The Recording files are all you need.
  3. Hardware Independent
    The Recordings are Hardware Independent too. Thus if you have a large server with 16gb ram and a small dev box with say 4gb ram, you can still play back the recording.
    The Chronon Eclipse plugin only needs the amount of memory required to display the data on your screen (a few megabytes at the max).

No Code Execution During Replay


No code of your program is being executed when you playback the Chronon Recordings,

The Chronon Time Traveling Debugger reads data from the recording file, almost like reading a database, to instantly reproduce the state of a program at any point in time.
This allows the Chronon recordings to be completely System Independent, as described above. This also keeps your system secure as there is nothing that can accidentally execute and make change to say, you filesystem, for example.

No Source Code changes required


You don’t need apply a single change to your source code to use Chronon. Just add a couple of extra arguments to your program’s launch and you are good to go.