Telemetry
Make your app talk…and talk…and talk. Inspired by Google's Dapper.
Here is a sample trace view generated by the TracingBundle of the execution of the TracedResource in the telemetry-example application.
IDs
Trace and span IDs will be expressed as UUIDs.
Trace/Span Passing
In order to trace across hosts trace ID and span ID information must be passed from one host to the next.
Over HTTP
Clients will pass the current trace ID and the current span ID to downstream services via HTTP request headers:
X-Telemetry-TraceId: {current trace ID}
X-Telemetry-SpanId: {current span ID}
X-Telemetry-Parent-SpanId: {parent span ID, may be absent if this is the root span}
Notes
Phylogenetic Trees
May be an interesting, high-density way of viewing trace data.
- phyloXML - expressive XML format for phylogenetic trees
- jsPhyloSVG - JavaScript library for rendering phylogenetic trees from phyloXML (and some other formats).
Network Diagrams
JavaScript libraries for rendering network (dependency?) diagrams.
Visualization
More random (not D3) JavaScript visualization libraries to check out.
- JavaScript InfoVis Toolkit
- D3 - okay, fine…D3, too.