Critical to running microservices is the ability to reason over their behavior. Not only does this include the triumvirate of logs, metrics, and traces, but critically needed visualization, troubleshooting, and debugging, as well. In Chapter 2, we covered how service meshes, in general, and Istio, specifically, provide for uniform observability. In this chapter, we survey specifics of the various signals and tools available to monitor services running on Istio. We discuss troubleshooting and debugging in Chapter 11.
Mixer (described in Chapter 9) plays a key role in collecting and coalescing telemetry generated by service proxies. Service proxies generate telemetry at runtime based on traffic they process, and buffer this telemetry before flushing it to Mixer for further processing. Half of Mixer’s job is amassing, translating, and transmitting these important signals (the other half being authorization). Routing of these various signals is entirely dependent on which and what type of adapters that Mixer is running. Let’s dig into Mixer’s adapters.
As mentioned in Chapter 4, Bookinfo is Istio’s canonical sample application, and we use it as the example application throughout this chapter.
As described in Chapter 9, adapters integrate Mixer with different infrastructure backends that deliver core functionality, such as logging, monitoring, quotas, access control list checking, and more. Operators have a choice of the number and type of ...