A brief take look at observability

Silvia Domínguez Peña
2 min readDec 2, 2020

--

Image from grafana.com

This article is intended to be a brief introduction to the observability and understand the different concepts.

What is observability?

Observability is the ability to understand what is happening in a real-time system. The idea is to know how the state your system is and in case of detecting a problem know where to start investigating.

The three pillars of the observability are Logging, Monitoring and Tracing.

Monitoring |Metrics | Telemetry

The main feature is that is aggregatable information. They are the principal unit that allows the generation of counters or histograms in a given time and even in real time (allows you to refresh the information from time to time). Metrics do not usually have a very broad associated context. They usually indicate what and when something has happened in the system but do not provide detailed information on why. To do this we will use logging.

There are a lot of popular tools for this such as Graphite, Prometheus, Grafana .. which are very well summarised in this article.

Grafana, for example, has a large community with a multitude of dashboards to monitor almost anything.

Logging

Handles discrete events that are often enriched by a context. This context adds valuable information to the event that allows us to know in detail what and when it happened.

Tracing (distributed tracing)

To speak of tracing is to speak of request.A request is a transaction in our life cycle. Tracing is responsible for checking the behavior of the request and its life cycle.In modern distributed systems, it is possible to make tracing following a request throughout its processing in different systems. A trace (distributed trace) is composed of spans. A span represents a logical unit of the workflow that can be a http request to a third-party component, for example. A very popular tool used for this is Jaeger, but there are many other tools like Opentracing, Zipkin

And that’s it!!, I hope it was helpful to clarify concepts -:-)

Thanks to Rafa Gomez and Miguel Cougil from codely.tv

--

--

No responses yet