Monitoraggio e Logging con Prometheus: Una Guida Pratica
Il monitoraggio e la registrazione sono componenti essenziali di qualsiasi infrastruttura IT solida. Garantiscono che i sistemi funzionino senza problemi, che i problemi vengano rilevati in anticipo e che le prestazioni siano ottimizzate. Prometheus è emerso come uno strumento popolare per queste attività, offrendo potenti funzionalità per la raccolta di metriche, l'interrogazione e l'invio di avvisi. In questa guida, esploreremo come utilizzare efficacemente Prometheus per il monitoraggio e la registrazione, fornendo un approccio pratico e pratico per iniziare. Gli argomenti chiave includono l'architettura di Prometheus, l'installazione, la configurazione, la raccolta di metriche, l'invio di avvisi e l'integrazione con altri strumenti.
Se sei curioso di sapere chi utilizza Prometheus a livello globale, ecco un breve elenco di alcune importanti aziende che hanno adottato Prometheus per le loro esigenze: JPMorgan, Dice, Garfana Labs, Visa e altre ancora...
Che cosa è Prometheus? Nozioni di base
Prometheus è un toolkit di monitoraggio e avviso open source progettato specificamente per affidabilità e scalabilità. Sviluppato originariamente presso SoundCloud, Prometheus fa ora parte della Cloud Native Computing Foundation (CNCF). Questa sezione approfondirà i concetti principali di Prometheus.
Esportatore di nodi
è un componente o servizio che raccoglie metriche da sistemi o applicazioni di terze parti (come database, server Web o dispositivi hardware) e le espone in un formato che Prometheus può elaborare. Gli esportatori sono comunemente utilizzati per sistemi che non hanno esposizione nativa alle metriche Prometheus.
Un esempio di esportatore di nodi potrebbe essere:
- Node Exporter viene utilizzato per esporre le metriche di sistema (ad esempio CPU, memoria, utilizzo del disco) dai sistemi Linux.
- MySQL Exporter raccoglie le metriche del database MySQL e le mette a disposizione di Prometheus per l'analisi.
Scoperta del servizio
è un meccanismo in Prometheus che rileva e configura automaticamente gli obiettivi di scrape (applicazioni, servizi o esportatori) senza intervento manuale. Invece di configurare manualmente ogni obiettivo, Prometheus può scoprirli tramite integrazioni con varie piattaforme, come Kubernetes, AWS EC2 o Consul. La scoperta dei servizi consente a Prometheus di mantenere aggiornato il suo elenco di obiettivi di scrape, anche quando i servizi vengono aggiunti o rimossi dinamicamente. Ad esempio, in Kubernetes, Prometheus può scoprire e monitorare automaticamente i nuovi pod mentre vengono distribuiti.
Scraping
si riferisce al processo tramite cui Prometheus raccoglie metriche da servizi o sistemi monitorati. Prometheus invia periodicamente richieste HTTP agli endpoint che espongono metriche, recupera i dati e li memorizza nel suo database di serie temporali. La frequenza di scraping e l'elenco di target sono definiti nella configurazione di Prometheus. Ad esempio, Prometheus potrebbe effettuare lo scraping dell'endpoint /metrics di un server Web ogni 15 secondi per raccogliere statistiche sulle richieste HTTP.
PromQL (linguaggio di query di Prometheus)
è il linguaggio di query utilizzato in Prometheus per recuperare e manipolare dati di serie temporali. Con PromQL, gli utenti possono interrogare le metriche archiviate, eseguire calcoli e creare visualizzazioni o avvisi. PromQL è uno strumento potente e flessibile per l'analisi dei dati, che supporta operazioni come filtraggio, aggregazioni e calcoli di velocità.
Raccolta di metriche con Prometheus
Prometheus raccoglie le metriche eseguendo lo scraping dei target a intervalli specificati. Questa sezione spiegherà come definire i target nel file di configurazione prometheus.yml e come utilizzare gli esportatori per esporre le metriche da sistemi diversi (come Node Exporter per le metriche di sistema Linux, Blackbox Exporter per il sondaggio degli endpoint, ecc.). Tratterà anche la scrittura di esportatori personalizzati per le tue applicazioni specifiche.
Callback
Nel contesto di Prometheus, un callback si riferisce a una funzione o gestore che viene invocato quando Prometheus esegue lo scraping di un target. Questo si applica in genere quando le metriche non sono archiviate direttamente nella memoria ma devono essere calcolate o recuperate su richiesta da una fonte esterna. Il callback consente a un target di restituire dinamicamente le metriche al momento dello scraping. Ciò è comune nella strumentazione personalizzata in cui viene eseguita una logica specifica per calcolare le metriche solo quando necessario.
target
In Prometheus, "target" si riferisce ai singoli endpoint (tipicamente applicazioni o servizi) che Prometheus esegue lo scraping per raccogliere le metriche. Questi target sono definiti nel file di configurazione di Prometheus (prometheus.yml) e solitamente espongono le metriche tramite HTTP su un endpoint specifico (ad esempio, /metrics). I target sono organizzati in gruppi e job e Prometheus li interroga regolarmente per recuperare dati aggiornati. Un target potrebbe essere un Node Exporter in esecuzione su un server che Prometheus esegue lo scraping per raccogliere le metriche di sistema.
![]() |
| Architettura di Prometheus, che mostra come Prometheus estrae metriche da varie fonti, le memorizza in un database di serie temporali e fornisce avvisi. |
Installazione e configurazione di Prometheus
Questa sezione fornisce una guida passo-passo su come installare Prometheus su un sistema operativo basato su Linux. L'obiettivo è avere un'istanza di Prometheus funzionante entro la fine di questa sezione.
Descrizione software/hardware
- Oracle VirtualBox: un potente prodotto di virtualizzazione x86 e AMD64/Intel64.
- Immagine ISO di una distribuzione Linux (Ubuntu Budgie 22.04.2 LTS 64 bit).
- Memoria: 4 GB
- Disco rigido: 60 GB
- CPU 4 CPU
Installazione di Prometheus
Sito di download: https://prometheus.io/download/
Versione scaricata: prometheus-2.54.1.linux-amd64
Eseguire il seguente comando nel terminale:
tar xvfz prometheus-*.tar.gz
cd prometheus-*
./prometheus
Avvia il tuo browser e vai alla pagina di Prometheus: http://localhost:9090
![]() |
| Pagina iniziale di Prometeo. |
![]() |
| Catalogo di metriche accessibili di Prometheus. |
byte_di_memoria_residente_del_processo
Questa metrica rappresenta la quantità di memoria in byte che un processo sta attualmente utilizzando nella RAM (detta anche "memoria residente"). È una metrica di tipo gauge che fornisce un'istantanea in tempo reale del consumo di memoria, che può aiutare a identificare le perdite di memoria o a comprendere l'impronta di memoria di un'applicazione.
Se monitorando un server Prometheus si nota un process_resident_memory_bytesaumento costante, potrebbe trattarsi di una perdita di memoria o di un'inefficienza nell'applicazione.
![]() |
| Grafico della memoria del processo residente in byte. |
process_cpu_seconds_totale
Questa metrica mostra la quantità totale di tempo di CPU (in secondi) consumata da un processo. Si accumula nel tempo e rappresenta l'utilizzo della CPU dall'inizio del processo. Questa metrica è in genere utilizzata per analizzare l'utilizzo della CPU ed è utile se combinata con la funzione rate() per monitorare l'utilizzo della CPU in una finestra temporale specificata.
rate(process_cpu_seconds_total[5m]) calcola il tasso di utilizzo della CPU negli ultimi 5 minuti, fornendo informazioni su quanto intensamente l'applicazione sta utilizzando le risorse della CPU.
![]() |
| rate(process_cpu_seconds_total[5m]) calcola il tasso di utilizzo della CPU negli ultimi 5 minuti |
Prometheus può essere configurato utilizzando il file XML: prometheus.yml.
Installa l'esportatore di nodi
Un esportatore è un componente o un servizio che raccoglie metriche da sistemi o applicazioni di terze parti (come database, server Web o dispositivi hardware) e le espone in un formato che Prometheus può estrarre. Gli esportatori sono comunemente utilizzati per sistemi che non hanno esposizione nativa alle metriche Prometheus.
Installazione dell'esportatore di nodi
Scarica la versione: node_exporter-1.8.2.linux-amd64.tar.gz
Eseguire il seguente comando nel terminale:
tar xvfz node_exporter-*.tar.gzcd node_exporter-*
./node_exporter
Modificare il file di configurazione di Prometheus, prometheus.yml, per includere le seguenti righe:
L'intero file di configurazione di Prometheus è:
Riavvia Prometeo.
![]() |
| Nella pagina di destinazione di Prometheus, sia "node" che "prometheus" sono operativi. |
![]() |
Grafico che illustra l'utilizzo della memoria residente del nodo etichettato "nodo". |
![]() |
Impostazione degli avvisi con Prometheus e Alertmanager
Prometheus fornisce solide capacità di avviso tramite la sua integrazione con Alertmanager. Questa sezione ti guiderà su come definire le regole di avviso, configurare Alertmanager e instradare gli avvisi a vari canali come e-mail, Slack o PagerDuty. Discuteremo anche delle best practice per impostare gli avvisi per evitare l'affaticamento da avviso.
Le regole di avviso definiscono le condizioni in Prometheus che attivano gli avvisi quando vengono soddisfatte determinate soglie o pattern nei dati metrici. Queste regole sono scritte in PromQL e valutate periodicamente da Prometheus. Se la condizione di una regola è vera, genera un avviso, che viene quindi inviato ad Alertmanager per un'ulteriore elaborazione (ad esempio, routing o notifica).
Gestore avvisi
Alertmanager è un componente dell'ecosistema Prometheus responsabile della gestione degli avvisi generati dalle regole di avviso di Prometheus. Gestisce il ciclo di vita degli avvisi, inclusa la deduplicazione, il raggruppamento e l'instradamento verso vari canali di notifica (ad esempio, e-mail, Slack, PagerDuty). Consente inoltre agli utenti di silenziare o inibire gli avvisi in determinate condizioni (ad esempio, durante le finestre di manutenzione).
Installazione di Alertmanager
Scarica la versione: alertmanager-0.27.0.linux-amd64.tar.gz
Eseguire dalla riga di comando:
cd alertmanager-*
./alertmanager
Rivedere il file di configurazione di Prometheus, prometheus.yml, per adattarlo al seguente formato aggiornato:
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
rule_files: [rules.yml]
alerting:
alertmanagers:
- static_configs:
- targets: [localhost:9093]
# - alertmanager:9093
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: "prometheus"
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["localhost:9090"]
- job_name: "node"
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["localhost:9100"]
Memorizza un file denominato rules.xml nella directory prometheus:
groups:
- name: test
rules:
- alert: InstanceDown
expr: up == 0
È possibile personalizzare Alertmanager utilizzando il file alertmanager.yml presente nella directory alertmanager.
Avvia il tuo browser e vai alla pagina Alertmanager: http://localhost:9093/#/alerts
![]() |
| Avvia il tuo browser e vai alla pagina Alertmanager |
Ogni volta che un target non funziona per qualsiasi motivo, il gestore degli avvisi invierà una notifica via e-mail tramite il sistema appena configurato.
![]() |
Pagina di avviso di Prometheus che indica che un bersaglio è offline. |
alerting rule e recording rule
Il file rules.yml in Prometheus è utilizzato per definire le regole di allerta e le regole di registrazione . Questo file fa parte della configurazione di allerta e monitoraggio di Prometheus. Sebbene sia in genere denominato rules.yml , puoi assegnargli qualsiasi nome, purché sia referenziato correttamente nel file di configurazione di Prometheus ( prometheus.yml ).
Ecco una ripartizione dei due tipi di regole che possono essere configurate in questo file:
Alerting rule
Le regole di avviso vengono utilizzate per attivare avvisi in base alle condizioni valutate dalle metriche raccolte da Prometheus. Quando le condizioni definite nella regola vengono soddisfatte, Prometheus crea avvisi, che possono essere inviati ad Alertmanager (un altro componente di Prometheus) per l'elaborazione e l'instradamento (ad esempio, inviando notifiche a e-mail, Slack, PagerDuty, ecc.).
Esempio di una regola di avviso in rules.yml: gruppi:
- name: example-alerts rules: - alert: HighCPUUsage expr: sum(rate(process_cpu_seconds_total[5m])) by (instance) > 0.8 for: 5m labels: severity: critical annotations: summary: "High CPU usage detected on instance {{ $labels.instance }}" description: "CPU usage has exceeded 80% for the last 5 minutes on {{ $labels.instance }}."
alert : il nome dell'avviso (ad esempio, HighCPUUsage ).
expr : espressione PromQL che definisce la condizione per l'avviso (ad esempio, utilizzo della CPU superiore all'80%).
for : durata per cui la condizione deve essere vera prima che venga attivato un avviso.
labels : metadati utili per identificare e instradare l'avviso (ad esempio, livello di gravità).
annotations : informazioni aggiuntive sull'avviso, come un riepilogo e una descrizione, che possono essere visualizzate nelle notifiche di avviso.
Recording rule
Le regole di registrazione consentono di precalcolare e archiviare i risultati delle query Prometheus. Ciò è utile quando si desidera eseguire query complesse frequentemente o su grandi set di dati, poiché riduce il sovraccarico computazionale precalcolando il risultato e archiviandolo come una nuova metrica.
Esempio di una regola di registrazione in rules.yml:
groups: - name: example-recording-rules rules: - record: job:http_inprogress_requests:sum expr: sum by (job) (http_inprogress_requests)
record : il nome della nuova metrica da registrare (ad esempio, job:http_inprogress_requests:sum ).
expr : query PromQL per calcolare il valore della metrica (ad esempio, la somma delle richieste HTTP in corso per processo).
Struttura di rules.yml
Le regole nel file rules.yml sono raggruppate insieme usando i gruppi. Ogni gruppo può contenere più regole di avviso e registrazione. Il raggruppamento delle regole è utile perché Prometheus valuta le regole in un gruppo insieme allo stesso tempo.
Struttura di esempio di rules.yml:
groups: - name: example-group interval: 30s # Evaluation interval for this group rules: - alert: HighMemoryUsage expr: sum(container_memory_usage_bytes) > 1e+09 for: 5m labels: severity: warning annotations: summary: "High Memory Usage Detected" description: "Memory usage is above 1GB for more than 5 minutes." - record: instance:node_cpu:rate1m expr: rate(node_cpu_seconds_total[1m])
Visualizzazione dei dati con Prometheus e la libreria client JAVA
Una libreria client in Prometheus è una libreria fornita per vari linguaggi di programmazione (ad esempio, Go, Python, Java, Ruby) che consente alle applicazioni di esporre metriche personalizzate a Prometheus. Queste librerie aiutano gli sviluppatori a strumentare il loro codice per definire, creare ed esporre vari tipi di metriche come contatori, indicatori, istogrammi e riepiloghi. Una volta esposte le metriche, Prometheus può raschiare l'endpoint dell'applicazione per raccogliere i dati per il monitoraggio.
Nel mio codice di esempio Java, mostrerò un'applicazione semplice delle funzionalità di Prometheus.
Impostazione dell'area di lavoro dell'applicazione Maven
Counter
Un contatore è una metrica che rappresenta un valore monotonicamente crescente che può solo aumentare (o azzerare). I contatori sono spesso usati per tracciare eventi, come il numero di richieste HTTP, il numero di errori o i byte elaborati. Un contatore non dovrebbe mai diminuire, ma può azzerarsi (solitamente dopo un riavvio del servizio). Ad esempio, http_requests_total potrebbe contare il numero totale di richieste HTTP elaborate da un server.
Nell'esempio seguente, il metodo inc() viene utilizzato all'interno di un ciclo esclusivamente per tenere traccia degli incrementi del ciclo.
Nella pagina del grafico, scegli la metrica my_counter_total. Chiaramente, il grafico mostrerà una rampa in costante ascesa.
Rate
In Prometheus, rate è una funzione utilizzata per calcolare la velocità media al secondo di incremento di un dato contatore in un intervallo di tempo specificato. È più comunemente applicata ai contatori, come il numero di richieste o errori, e aiuta a visualizzare la velocità con cui qualcosa cambia nel tempo. Ad esempio, utilizzando rate(my_counter_total[1m]) si calcola l'incremento al secondo del contatore my_counter nell'ultimo minuto.
Gauge
Un indicatore è una metrica che rappresenta un valore che può salire e scendere nel tempo, al contrario di un contatore, che aumenta solo. Gli indicatori vengono utilizzati per tracciare valori come l'utilizzo corrente della memoria, l'utilizzo della CPU, il numero di connessioni attive o l'ultima volta che è stata elaborata una richiesta. Ad esempio, un indicatore potrebbe tracciare il tempo necessario per il completamento di un ciclo, dove il valore può aumentare o diminuire in base alle condizioni.
Nell'esempio Java, inProgress viene incrementato a ogni ciclo e registra l'ora di fine di ogni ciclo.
Bucket
Un bucket si riferisce a un intervallo in cui cade un valore di osservazione quando si utilizza un istogramma. I bucket consentono all'istogramma di tracciare quante osservazioni rientrano in determinati intervalli di valori. È possibile definire i bucket in base a ciò che ha senso per la metrica tracciata (ad esempio, latenze in millisecondi).
Ad esempio, potresti avere bucket per le latenze delle richieste: [0,1, 0,5, 1, 2, 5] secondi. Una richiesta che impiega 0,7 secondi rientrerebbe nel bucket da 1 secondo. Analizzando i conteggi dei bucket, puoi comprendere la distribuzione delle latenze (o altri valori misurati).Summary
Un summary è un tipo di metrica in Prometheus che cattura osservazioni come dimensioni di risposta o durate di richiesta. Può calcolare quantili (come il 50° percentile, il 90° percentile, ecc.) e mantiene anche un totale corrente di osservazioni e la loro somma. I riepiloghi sono utili per tracciare la durata delle operazioni o la dimensione delle risposte, fornendo informazioni su distribuzione e latenza.
I summary vengono calcolati localmente in ogni istanza, rendendo difficile l'aggregazione tra più istanze o servizi.
Istogramma
Un istogramma è un tipo di metrica che misura la distribuzione delle osservazioni (come durate delle richieste o dimensioni delle risposte) segmentandole in bucket configurabili. A differenza dei riepiloghi, gli istogrammi sono progettati per essere aggregabili su più istanze.
![]() |
| Tabella di distribuzione dei bucket. |
![]() |
| Grafico della distribuzione dei bucket. |
Un quantile è una misura statistica che divide un set di dati in intervalli consecutivi di uguali dimensioni. Ad esempio, il quantile 0,5 (chiamato anche mediana) divide il set di dati in modo tale che il 50% dei dati sia al di sotto di questo valore e il 50% al di sopra. In Prometheus, i quantili vengono utilizzati con gli istogrammi per misurare i tempi di risposta o la latenza a diversi livelli (ad esempio, 90° o 99° percentile), fornendo informazioni sulla distribuzione di una metrica particolare.
Esempio: il 99° percentile (quantile 0,99) della durata della richiesta indica che il 99% di tutte le richieste è stato completato in questo lasso di tempo o meno, mentre l'1% ha impiegato più tempo.
histogram_quantile() è una funzione Prometheus utilizzata per stimare i quantili (ad esempio, il 90° o il 99° percentile) dai bucket dell'istogramma. Viene spesso utilizzata per analizzare le distribuzioni dei tempi di risposta, fornendo informazioni su quanto tempo impiegano le richieste a determinati percentili. Questa funzione è particolarmente utile quando si desidera comprendere l'esperienza di latenza degli utenti più lenti. Tiene traccia di quante osservazioni rientrano in ciascun bucket (in base a soglie definite). Gli istogrammi possono essere utili quando si analizzano latenza, dimensioni della risposta e durate delle richieste su diversi servizi.
![]() |
| histogram_quantile(0.95, rate(my_loop_event_duration_bucket[10m])) calcola il 95° percentile delle durate dei loop negli ultimi 10 minuti. |
Visualizzazione dei dati con Prometheus e Grafana
Mentre Prometheus è dotato di un'interfaccia utente web di base per interrogare e visualizzare i dati, Grafana è spesso utilizzato per dashboard e visualizzazioni più avanzate. Questa sezione spiegherà come integrare Prometheus con Grafana, creare dashboard personalizzate e utilizzare le query Prometheus (PromQL) per visualizzare metriche chiave.
Pagina di download di Grafana: https://grafana.com/grafana/download
Nella riga di comando, immettere:
sudo apt-get install -y adduser libfontconfig1 muslwget https://dl.grafana.com/enterprise/release/grafana-enterprise_11.2.0_amd64.deb
sudo dpkg -i grafana-enterprise_11.2.0_amd64.deb
Per avviare Grafana, immettere:
sudo grafana-server -homepath /usr/share/grafana
Passaggi per collegare Grafana a Prometheus
1. Accedi all'interfaccia utente di Grafana
- Apri il tuo browser web e vai alla tua istanza Grafana (in genere http://localhost:3000 se eseguita in locale).
- Accedi con le tue credenziali (nome utente e password predefiniti sono entrambi admin per il primo accesso).
2. Aggiungere Prometheus come origine dati
- Una volta effettuato l'accesso, nella barra laterale sinistra, clicca su "Connessioni" e seleziona quindi "Origini dati".
- Fare clic sul pulsante "Aggiungi origine dati".
3. Scegli Prometeo
4. Configurare la fonte dati di Prometheus
- Verrai indirizzato a una pagina di impostazioni per configurare la sorgente dati di Prometheus.
- URL: inserisci l'URL del tuo server Prometheus (ad esempio, http://localhost:9090 oppure l'indirizzo della tua istanza remota di Prometheus).
- Accesso: impostare su "Server" (predefinito) se Grafana e Prometheus sono in esecuzione sulla stessa rete oppure utilizzare "Browser" se si desidera che il browser si connetta direttamente a Prometheus.
- Autenticazione di base: se l'istanza di Prometheus richiede l'autenticazione, configura qui le credenziali necessarie.
5. Testare la connessione
- Scorri fino in fondo alla pagina e clicca su "Salva e prova".
- Se la connessione riesce, vedrai un messaggio verde che dice "L'origine dati funziona".
6. Crea una nuova dashboard
- Per creare una nuova dashboard, clicca sul pulsante "+ Nuova dashboard" nella barra laterale sinistra oppure vai su Dashboard → Gestisci → Nuova dashboard.
- Aggiungi visualizzazione
- Seleziona la fonte dati di Prometheus
![]() |
| Pannello vuoto Grafana |
7. Interroga le metriche di Prometheus
- Nella sezione "Query", seleziona "Prometheus" come origine dati (dovrebbe essere già selezionato se è l'unica origine dati).
- Selezionare i filtri Etichetta come job e il valore app_test (job = app_test).
- Impostato nel pannello Opzioni standard, Unità in byte.
- Selezionare Esegui query.
- È possibile regolare il tipo di visualizzazione (grafico, indicatore, tabella, ecc.), l'intervallo di tempo e altre impostazioni.
- Aggiungere altri pannelli in base alle necessità per visualizzare diverse metriche di Prometheus.
9. Salva la dashboard
Una volta che sei soddisfatto dei pannelli, clicca su "Salva" nell'angolo in alto a destra dello schermo, assegna un nome alla dashboard e salvala per un utilizzo futuro.
Conclusione
Prometheus offre una soluzione potente e flessibile per il monitoraggio e la registrazione in moderni ambienti IT. Seguendo questa guida pratica, dovresti essere ben equipaggiato per configurare Prometheus, raccogliere e visualizzare metriche, configurare avvisi e integrarlo con altri strumenti nel tuo stack di osservabilità. Che tu sia nuovo di Prometheus o che tu stia cercando di migliorare la tua configurazione esistente, questa guida funge da risorsa completa per raggiungere i tuoi obiettivi di monitoraggio e registrazione.
Riferimenti
Documentazione di Prometheus : la documentazione ufficiale di Prometheus fornisce informazioni dettagliate sulla sua architettura, configurazione e utilizzo. È una risorsa primaria per comprendere come funziona Prometheus e come utilizzarlo efficacemente per il monitoraggio.
Documentazione Grafana : questa guida dal sito web Grafana ti guida attraverso l'integrazione di Grafana con Prometheus per visualizzare le metriche. È una risorsa essenziale per creare e gestire dashboard con Grafana.
"Prometheus: Up & Running" di Brian Brazil: pubblicato da O'Reilly Media, 2018. Una guida completa per comprendere Prometheus dall'installazione ad argomenti avanzati come PromQL e avvisi. È un'ottima risorsa sia per principianti che per utenti avanzati.
Documentazione di Alertmanager : la documentazione ufficiale di Alertmanager, che spiega come configurare e utilizzare Alertmanager per gestire gli avvisi generati da Prometheus.
Il tuo feedback è importante!
Hai idee o suggerimenti? Segui il blog e condividi i tuoi pensieri nei commenti.
Su di me
Sono un appassionato di tecnologie IT. Se sei interessato a saperne di più o a rimanere aggiornato sui miei ultimi articoli, sentiti libero di contattarmi su:
Se avete domande, non esitate a contattarci tramite una qualsiasi di queste piattaforme!





![rate(process_cpu_seconds_total[5m]) calcola il tasso di utilizzo della CPU negli ultimi 5 minuti rate(process_cpu_seconds_total[5m]) calcola il tasso di utilizzo della CPU negli ultimi 5 minuti](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD_n5eErGqfJzCdTtLp9v6TPh_SEALnMKd_ZrWlDD3bKnQBS5ETs97egV84abwb9i8Y3GWrH0N-Wqv92nN86Oag6V6H5G5k49tYN6tB9N-fJ7a_UKjAmrtAIyMfAYmb_Ka19Lm0pXXFjvViJCPVUTPjJ-ErYDqOnP6UJcr80gdxVL7bpu8DoYRD7f10ys/w640-h322-rw/cpu.png)












![histogram_quantile(0.95, rate(my_loop_event_duration_bucket[10m])) calcola il 95° percentile delle durate dei loop negli ultimi 10 minuti. histogram_quantile(0.95, rate(my_loop_event_duration_bucket[10m])) calcola il 95° percentile delle durate dei loop negli ultimi 10 minuti.](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPkyl1JGUZ56Vi4tqewhHkwThhFuSkwzPuOsXIxEPl7_BnSjfIWC_y_gNCUgeg0gORO4wb8Uh1dhFBzkWSN3DGflvwpeOUav4kOMrun0Mf5c9FfJv6YIRTtTKp77Wj6WseGUIb5aapTB34cEDEVMrjJTQy8g41SgKjgD898EkwwcXTgr3LW5eoAIOXW-8/w640-h318-rw/histogram_qualti.png)





Commenti
Posta un commento