This chapter focuses on emitting (and parsing) events from your production code. Chapter 2 was all about the Emitting stage in general, and if you haven’t read it, this chapter will make less sense. Standardizing the format of telemetry for centralized logging and metrics emissions makes your telemetry system easier to maintain overall. There is a clear up-front cost to building standards—especially if you are retrofitting standards into an existing group of software—but the results should provide room to grow.
Figure 12.1 should be familiar if you’ve read part 1; it describes the various pipeline stages for telemetry and the roles each stage plays. The standards we’re talking about in this chapter are encoded in the Emitting stage and decoded in the Shipping stage. This encode/decode process also provides a great chance to add context-specific details (telemetry markup) as part of the Emitting-stage work and to make the process of extracting additional telemetry from existing telemetry (telemetry enrichment) far more efficient in the Shipping and Presentation stages. The Presentation stage plays a minor role in all this standards work, as it passively consumes the finished product.