11 Signal correlation

 

This chapter covers

  • What we mean by signal correlation
  • Why you need correlation
  • How to implement correlation
  • Challenges implementing correlation

Cloud-native systems are distributed systems, which refers to many services working together to handle a request. When many services are working together, it turns out it’s not always clear which service contributes to a failure or causes latency issues.

The four fundamental observability signal types (logs, metrics, traces, and profiles) each provide insights on their own; however, they typically can’t answer all of your questions. Remember, the goal of observability is to derive actionable insights from the signals. So what should you do if a single signal type doesn’t yield the insights you hoped for? Use more than one signal type—combine them.

Where might correlation come in handy? Glad you asked:

11.1 Correlation fundamentals

11.1.1 Correlation with OpenTelemetry

11.1.2 Correlating traces

11.1.3 Correlating metrics

11.1.4 Correlating logs

11.1.5 Correlating profiles

11.2 Using Prometheus, Jaeger, and Grafana for correlation

11.2.1 Metrics–traces correlation example setup

11.2.2 Using metrics–traces correlation

11.3 Signal correlation support in commercial offerings

11.4 Considerations

11.4.1 Early days

11.4.2 Signals

11.4.3 User experience

11.5 Conclusion