Observability is key to successful hybrid IT deployments because it goes hand-and-hand with controllability. If you can observe a system’s internals well, then you can control equally well that system’s output. But what is observability?
Observability is a measure of how well internal states of a system can be inferred from knowledge of its external outputs. It is a concept that originates from control systems theory. Thinking about the current landscape of observability, there are different opinions on what is sufficient for observability. Traditional IT professionals believe that metrics and logging are sufficient. IT professionals, who focus on logging, however, believe that metrics are too noisy and makes one susceptible to paralysis by overanalysis. Meanwhile, site reliability engineers, those who embrace the DevOps culture, associate observability to tracing microservices and code stack.
Who’s right? Who’s wrong? There are so many shades of observability grey that finding common ground can be a challenge in of itself. Application stacks are evolving with so much velocity, variety, and volume of change such that a combination of all three (metrics, logs, and traces) are needed to build a viable observability protocol. Thus, a proper toolset needs to encompass all three aspects while allowing subject matter experts to impart their rigor and discipline.
Have your organization incorporated observability concepts into your day to day? Please share your observability stories in the comment section below.