Introduction to observability and its importance in modern software systems
Before getting into applying vectors to observability, it is important to take the time to understand the high-level concepts of observability itself.
Observability is the ability to understand the internal state of any layer that composes a system based on its external outputs. This was a relatively easy task when these systems were monoliths with multiple layers but produced a centralized log output that described the behavior of this “box.” However, the process became more and more complicated as companies adopted decentralized cloud-native architectures such as microservices. The output for observability here becomes decorrelated, distributed, and composed of multiple signals, logs, metrics, and traces, to list but a few. Most vendors out there, including Elastic, have responded to this by striving to provide an integrated observability experience with the main goal of reducing mean time...