# [[Introduction to observability]]
Course:: [[Introduction to the Pillars of Observability]]
## Summary
> [!abstract] Summary
> Observability is about gathering as much information as you can about a system (more than you think you'll need) so that you can answer not just expected questions but also unexpected ones. It is particularly useful in today's microservices-dominated world.
>
> The three pillars of observability are typically said to be metrics, logs, and traces, but there are other pillars that should be added, such as synthetic monitoring, load testing, visualisation, alerting, machine learning, and on-call management.
## Log
Many applications have moved to a [[Microservices|microservices-based architecture]] or "cloud-native". Complexity is an issue though.
> If you can't ask new questions in a changing environment as problems come up, it's not observability.
^2fc6d5
Logs are great at inspecting expected errors, but what about *unexpected* errors?
From monitoring to observability
- Metrics and logs aren't enough
- Observability is the practice of gathering and correlating *as much information as possible about a system*
- Observability enables insight into novel issues and unanticipated questions.
Pillars
- Metrics
- time-stamped
- sampled and recorded across defined interval
- Logs
- time-stamped
- Traces
- recorded event data that helps you follow a request through multiple application components
- Other non-traditional pillars
- Synthetic monitoring
- Load testing
- Visualisation
- Alerting
- Machine learning
- On-call management