Part 1: Telemetry system architecture
Each of the telemetry systems described in chapter 1 follows the same general architecture. Every production system emits telemetry data. This is then shipped into a datastore of some form, which could be a relational database, a NoSQL document store, or even an object store. From there it is presented in a way that people can use the processed telemetry data to support decisions, which could be in the form of reports or on-demand charting. Along the way, telemetry is marked up with context-related details, and then enriched to pull out details encoded in the telemetry. Figure 1 describes this architecture.
Figure P1.1: Telemetry system pipeline stages with their definitions. The Emitting Stage packages telemetry for the Shipping Stage, which processes, transforms, and stores telemetry to be consumed by the Presentation Stage. Markup adds context-related telemetry during the Emitting and Shipping stages, where enrichment transforms telemetry to improve its usefulness during the Shipping and Presentation stages.
Chapter 1 discussed five styles of telemetry: