Monitoraggio di microservizi: introduzione a Prometheus e Grafana
Prometheus
Prometheus è un tool di monitoraggio e alerting che archivia metriche in un database proprietario di timeseries.
Una timeseries, o serie temporale, è una serie di data point indicizzati (o elencati o rappresentati in un grafico) in ordine temporale. Più comunemente, una serie temporale è una sequenza presa in punti successivi ugualmente distanziati nel tempo.
Comunemente sono tracciate tramite grafici a linee, e sono utilizzate in diversi ambiti (statistica, previsioni meteorologiche, elaborazione del segnale per citarne alcuni).
In gran parte le timeseries sono utilizzate in qualsiasi settore della scienza applicata e dell’ingegneria che coinvolge misurazioni temporali.
Tramite il linguaggio di query specifico PromQL, Prometheus Query Language, è possibile recuperare/aggregare i dati accumulati.
Grafana
Grafana mette a disposizione un data source che permette di accedere in maniera semplice a tutti i dati immagazzinati da Prometheus.
Prometheus e Grafana: un caso d’uso
Tutti questi dati, messi in relazione tra loro, permettono di analizzare alcuni malfunzionamenti e risalire alla loro causa.
Alerting
Conclusioni
In questo articolo è stata data un’infarinatura di base sugli strumenti Prometheus e Grafana e perché è utile farne uso per monitorare le prestazioni di un sistema a microservizi.
Nel prossimo articolo vedremo come configurare un sistema con questi strumenti realizzando da zero un semplice progetto.