When generating the statistics and tracking logs from chrony, I see the following headers (along with the accompanying data):
Tracking:
=== Date (UTC), Time, IP Address, St, Freq ppm, Skew ppm, Offset, L, Co, Offset sd, Rem. corr., Root delay, Root disp., Max. error ===
Statistics:
=== Date (UTC), Time, IP Address, Std dev'n, Est offset, Offset sd, Diff freq, Est skew, Stress, Ns, Bs, Nr, Asym ===
For the tracking file, I'm trying to understand what the following mean:
- Co
- Rem. corr.
- Max. error
For the statistics file, I'm trying to understand the following:
- Est offset (vs the regular offset)
- Diff freq
- Stress
- Ns, Bs, Nr, and Asym
I'd appreciate any guidance or links to documentation that explains what these variables represent. Thanks.
I read through the chrony documentation online (https://chrony.tuxfamily.org/faq.html) and found good information on most of the fields in the tracking log; I could not find information on all of them, however. I was also not able to find much information on the header fields in the statistics log.
I had the same question. Thanks for asking!
I found this man page (after puzzling out some info from the online source, below) Ubuntu Manpage: chrony.conf - chronyd configuration file
Earlier answer....
To move us in the right direction, I decided it was time to Use the Source, Luke, and found the write_log() function in reference.c.
reference.cis the file that prints thetracking.logfile, including the header you shared.Cocomes from the integer variablecombined_sources, and seems to be the number of reference sources which are being used.Rem. corr.comes fromuncorrected_offset.Other relevant tidbits include:
I'm still not sure what
Rem. corr.ormax_errorreally are, but perhaps this helps us decipher them.reference.h has some useful comments.
sourcestats.c produces the
statistics.logfile.Est offsetcomes fromestimated_offsetabout which it says this. I guess they may just be noting that they can only estimate the offset statistically, vs knowing the actual current value:The other values come from these variables:
Diff freq:inst->estimated_frequency/* This value contains the estimated frequency. This is the number of seconds that the local clock gains relative to the reference source per unit local time. (Positive => local clock fast, negative => local clock slow) */Ns:inst->n_samples/* Number of samples currently stored. The samples are stored in circular buffer. */Bs:best_startNr:inst->nruns/* Number of runs of the same sign amongst the residuals */Asym:inst->asymmetry/* the latest estimated asymmetry of network jitter */Again, sourcestats.h documents the functions, providing more hints.