Tracing Granularity

Different tracing backend stacks support varying granularity on timestamps marking the beginning of tracing spans. For example, Zipkin specifies timestamps in microseconds where others specify them using milliseconds.

Cinnamon provides millisecond granularity for tracing, so multiple spans started within the same millisecond will show as all starting on exactly the same millisecond.

The practical application of this comes into effect when generating multiple trace spans locally that may start within the same millisecond, as demonstrated in this example trace screenshots:

Example 1

Opentracing millisecond granularity example 1

The three sub-spans all appear to begin at 2ms exactly.

Example 2

Opentracing millisecond granularity example 2

The sub-spans all appear to begin at either 1ms, 2ms or 3ms exactly.