Questo documento descrive la configurazione e l'utilizzo di un ricevitore di metriche di Ops Agent che puoi utilizzare per raccogliere le metriche da Prometheus su Compute Engine. Questo documento descrive anche un esempio che puoi utilizzare per provare il ricevitore.
Gli utenti di Google Kubernetes Engine sono in grado di raccogliere le metriche Prometheus utilizzando Google Cloud Managed Service per Prometheus. Il ricevitore Prometheus di Ops Agent offre agli utenti di Compute Engine la stessa funzionalità.
Puoi utilizzare tutti gli strumenti forniti da Cloud Monitoring, incluso PromQL, per visualizzare e analizzare i dati raccolti dal ricevitore Prometheus. Ad esempio, puoi utilizzare Esplora metriche, come descritto in Google Cloud console per il monitoraggio, per eseguire query sui tuoi dati. Puoi anche creare dashboard e policy di avviso di Cloud Monitoring per monitorare le metriche Prometheus. Ti consigliamo di utilizzare PromQL come linguaggio di query per le metriche Prometheus.
Puoi anche visualizzare le metriche di Prometheus in interfacce esterne a Cloud Monitoring, come la UI di Prometheus e Grafana.
Scegliere il destinatario giusto
Prima di decidere di utilizzare il ricevitore Prometheus, determina se esiste già un'integrazione di Ops Agent per l'applicazione che stai utilizzando. Per informazioni sulle integrazioni esistenti con Ops Agent, vedi Monitoraggio di applicazioni di terze parti. Se esiste un'integrazione, ti consigliamo di utilizzarla. Per ulteriori informazioni, consulta Scegliere un'integrazione esistente.
Ti consigliamo di utilizzare il ricevitore Prometheus di Ops Agent quando si verificano le seguenti condizioni:
Hai esperienza nell'utilizzo di Prometheus, ti affidi allo standard Prometheus e comprendi in che modo fattori come l'intervallo di scraping e la cardinalità possono influire sui costi. Per saperne di più, vedi Scegliere il ricevitore Prometheus.
Il software che stai monitorando non fa ancora parte dell'insieme di integrazioni di Ops Agent esistenti.
Integrazioni esistenti
Ops Agent fornisce integrazioni per una serie di applicazioni di terze parti. Queste integrazioni ti offrono quanto segue:
- Un insieme di metriche
workload.googleapis.com
selezionate per l'applicazione - Una dashboard per visualizzare le metriche.
Le metriche importate utilizzando un'integrazione esistente sono soggette a prezzi basati sui byte per le metriche raccolte dall'agente. Per informazioni su questi prezzi, consulta Metriche addebitate in base ai byte importati. Il numero e i tipi di metriche sono noti in anticipo e puoi utilizzare queste informazioni per stimare i costi.
Ad esempio, se utilizzi l'integrazione del server web Apache (httpd), Ops Agent raccoglie cinque metriche scalari; ogni punto dati conta come 8 byte. Se mantieni la frequenza di campionamento predefinita di Ops Agent di 60 secondi, il numero di byte inseriti al giorno è 57.600 * il numero di host:
- 8 (byte) * 1440 (minuti al giorno) * 5 (metriche) * n (host) o
- 57.600 * n (host)
Per ulteriori informazioni sulla stima dei costi, consulta la sezione Esempi di prezzi in base ai byte importati.
Il ricevitore Prometheus
Quando utilizzi Ops Agent per raccogliere le metriche Prometheus, si applicano le seguenti condizioni:
Il numero e la cardinalità delle metriche emesse dalla tua applicazione sono sotto il tuo controllo. Non esiste un insieme curato di metriche. La quantità di dati che inserisci è determinata dalla configurazione dell'applicazione Prometheus e dal ricevitore Prometheus di Ops Agent.
Le metriche vengono importate in Cloud Monitoring come metriche
prometheus.googleapis.com
. Queste metriche vengono classificate come un tipo di metriche "personalizzate" quando vengono importate in Cloud Monitoring e sono soggette alle quote e ai limiti per le metriche personalizzate.Devi progettare e creare tutte le dashboard di Cloud Monitoring di cui hai bisogno, in base al set di metriche che stai importando e alle tue esigenze aziendali. Per informazioni sulla creazione di dashboard, vedi Dashboard e grafici.
Il prezzo per l'importazione delle metriche si basa sul numero di metriche addebitate in base ai campioni importati. Per stimare i costi quando utilizzi il ricevitore Prometheus, devi determinare il numero di campioni che probabilmente raccoglierai durante un ciclo di fatturazione. La stima si basa sui seguenti fattori:
- Numero di metriche scalari; ogni valore è un campione
- Numero di metriche di distribuzione; ogni istogramma viene conteggiato come (2 + numero di bucket nell'istogramma) campioni
- Frequenza di campionamento di ogni metrica
- Numero di host da cui vengono campionate le metriche
Per saperne di più sul conteggio dei campioni e sulla stima dei costi, consulta la sezione Esempi di prezzi in base ai campioni importati.
Prerequisiti
Per raccogliere le metriche Prometheus utilizzando il ricevitore Prometheus, devi installare Ops Agent versione 2.25.0 o successive.
Il ricevitore Ops Agent richiede un endpoint che emetta metriche di Prometheus. Pertanto, la tua applicazione deve fornire direttamente un endpoint di questo tipo o utilizzare una libreria o un esportatore Prometheus per esporre un endpoint. Molte librerie e framework di linguaggi come Spring e DropWizard o applicazioni come StatsD, DogStatsD e Graphite, che emettono metriche non Prometheus, possono utilizzare librerie client o esportatori Prometheus per emettere metriche in stile Prometheus. Ad esempio, per emettere metriche Prometheus:
- Gli utenti di Spring possono utilizzare la libreria Spring Metrics.
- Gli utenti di StatsD possono utilizzare il pacchetto
statsd_exporter
. - Gli utenti di Graphite possono utilizzare il pacchetto
graphite_exporter
.
Quando le metriche Prometheus vengono emesse da un'applicazione, direttamente o utilizzando una libreria o un esportatore, possono essere raccolte da unOps Agentps configurato con un ricevitore Prometheus.
Configurazione dell'agente operativo
Il modello di configurazione di Ops Agent in genere prevede la definizione di quanto segue:
- Ricevitori, che determinano quali metriche vengono raccolte.
- Processori, che descrivono in che modo Ops Agent può modificare le metriche.
- Pipeline, che collegano ricevitori e processori in un servizio.
La configurazione per l'importazione delle metriche Prometheus è leggermente diversa: non sono coinvolti processori.
Configurazione per le metriche Prometheus
La configurazione dell'Ops Agent per l'importazione delle metriche di Prometheus differisce dalla configurazione solita nel seguente modo:
Non creare un processore Ops Agent per le metriche di Prometheus. Il ricevitore Prometheus supporta quasi tutte le opzioni di configurazione specificate dalla specifica
scrape_config
di Prometheus, incluse le opzioni di rietichettatura.Anziché utilizzare un processore Ops Agent, l'elaborazione delle metriche viene eseguita utilizzando le sezioni
relabel_configs
emetric_relabel_configs
della configurazione di scraping, come specificato nel ricevitore Prometheus. Per maggiori informazioni, vedi Rietichettatura: modifica dei dati sottoposti a scraping.Definisci la pipeline Prometheus solo in termini di ricevitore Prometheus. Non specifichi alcun processore. Inoltre, non puoi utilizzare ricevitori non Prometheus nella pipeline per le metriche Prometheus.
La maggior parte della configurazione del ricevitore è la specifica delle opzioni di scrape-config. Omettendo queste opzioni per brevità, di seguito viene mostrata la struttura di una configurazione di Ops Agent che utilizza un ricevitore Prometheus. Specifica i valori di RECEIVER_ID e PIPELINE_ID.
metrics: receivers: RECEIVER_ID: type: prometheus config: scrape_configs: [... omitted for brevity ...] service: pipelines: PIPELINE_ID: receivers: [RECEIVER_ID]
La sezione seguente descrive il ricevitore Prometheus in modo più dettagliato. Per un esempio funzionale di un ricevitore e una pipeline, consulta Aggiungere il ricevitore e la pipeline dell&#Ops Agent Ops.
Il ricevitore Prometheus
Per specificare un ricevitore per le metriche di Prometheus, crea un ricevitore
di metriche di tipo prometheus
e specifica un insieme di opzioni scrape_config
.
Il ricevitore supporta tutte le opzioni di Prometheus
scrape_config
, ad eccezione delle seguenti:
- Le sezioni di rilevamento dei servizi,
*_sd_config
. - L'impostazione
honor_labels
.
Pertanto, puoi copiare le configurazioni di scraping esistenti e utilizzarle per l'Ops Agent con modifiche minime o nulle.
La struttura completa del ricevitore Prometheus è mostrata di seguito:
metrics: receivers: prom_application: type: prometheus config: scrape_configs: - job_name: 'STRING' # must be unique across all Prometheus receivers scrape_interval: # duration, like 10m or 15s scrape_timeout: # duration, like 10m or 15s metrics_path: # resource path for metrics, default = /metrics honor_timestamps: # boolean, default = false scheme: # http or https, default = http params: - STRING: STRING basic_auth: username: STRING password: SECRET password_file: STRING authorization: type: STRING # default = Bearer credentials: SECRET credentials_file: FILENAME oauth2: OAUTH2 # See Prometheus oauth2 follow_redirects: # boolean, default = true enable_http2: # boolean, default = true tls_config: TLS_CONFIG # See Prometheus tls_config proxy_url: STRING static_configs: STATIC_CONFIG # See Prometheus static_config relabel_configs: RELABEL_CONFIG # See Prometheus relabel_config metric_relabel_configs: METRIC_RELABEL_CONFIGS # See Prometheus metric_relabel_configs
Per esempi di configurazioni di rietichettatura, consulta Configurazione aggiuntiva del destinatario.
Esempio: configura Ops Agent per Prometheus
Questa sezione mostra un esempio di come configurare l'Ops Agent per raccogliere le metriche Prometheus da un'applicazione. Questo esempio utilizza l'esportatore JSON fornito dalla community Prometheus (json_exporter
), che espone le metriche Prometheus sulla porta 7979.
La configurazione dell'esempio richiede le seguenti risorse, che potresti dover installare:
git
curl
make
python3
- Linguaggio Go, versione 1.19 o successive
Creare o configurare l'applicazione
Per ottenere ed eseguire JSON Exporter, segui questa procedura:
Clona il repository
json_exporter
ed estrai l'esportatore eseguendo i seguenti comandi:git clone https://github.com/prometheus-community/json_exporter.git cd json_exporter git checkout v0.5.0
Crea l'esportatore eseguendo questo comando:
make build
Avvia il server HTTP Python eseguendo questo comando:
python3 -m http.server 8000 &
Avvia JSON Exporter eseguendo questo comando:
./json_exporter --config.file examples/config.yml &
Esegui una query su JSON Exporter per verificare che sia in esecuzione ed esponga le metriche sulla porta 7979:
curl "http://localhost:7979/probe?module=default&target=http://localhost:8000/examples/data.json"
Se la query è andata a buon fine, l'output è simile al seguente:
# HELP example_global_value Example of a top-level global value scrape in the json # TYPE example_global_value untyped example_global_value{environment="beta",location="planet-mars"} 1234 # HELP example_value_active Example of sub-level value scrapes from a json # TYPE example_value_active untyped example_value_active{environment="beta",id="id-A"} 1 example_value_active{environment="beta",id="id-C"} 1 # HELP example_value_boolean Example of sub-level value scrapes from a json # TYPE example_value_boolean untyped example_value_boolean{environment="beta",id="id-A"} 1 example_value_boolean{environment="beta",id="id-C"} 0 # HELP example_value_count Example of sub-level value scrapes from a json # TYPE example_value_count untyped example_value_count{environment="beta",id="id-A"} 1 example_value_count{environment="beta",id="id-C"} 3
In questo output, le stringhe come
example_value_active
sono i nomi delle metriche, con etichette e valori tra parentesi graffe. Il valore dei dati segue il set di etichette.
Aggiungi il ricevitore e la pipeline di Ops Agent
Per configurare Ops Agent in modo che importi le metriche dall'applicazione JSON Exporter, devi modificare la configurazione dell'agente per aggiungere un ricevitore e una pipeline Prometheus. Per l'esempio di esportatore JSON, utilizza la seguente procedura:
Modifica il file di configurazione di Ops Agent,
/etc/google-cloud-ops-agent/config.yaml
, e aggiungi le seguenti voci di pipeline e ricevitore Prometheus:metrics: receivers: prometheus: type: prometheus config: scrape_configs: - job_name: 'json_exporter' scrape_interval: 10s metrics_path: /probe params: module: [default] target: [http://localhost:8000/examples/data.json] static_configs: - targets: ['localhost:7979'] service: pipelines: prometheus_pipeline: receivers: - prometheus
Se in questo file sono già presenti altre voci di configurazione, aggiungi il ricevitore e la pipeline Prometheus alle voci
metrics
eservice
esistenti. Per ulteriori informazioni, consulta Configurazioni delle metriche.Per esempi di configurazioni di rietichettatura nel ricevitore, vedi Configurazione aggiuntiva del ricevitore.
Riavvia l'Ops Agent
Per applicare le modifiche alla configurazione, devi riavviare Ops Agent.
LINUX
Per riavviare l'agente, esegui il seguente comando sull'istanza:
sudo service google-cloud-ops-agent restart
Per verificare che l'agente sia stato riavviato, esegui il seguente comando e verifica che i componenti "Agente Metriche" e "Agente Logging" siano stati avviati:
sudo systemctl status google-cloud-ops-agent"*"
Windows
Connettiti all'istanza utilizzando RDP o uno strumento simile e accedi a Windows.
Apri un terminale PowerShell con privilegi di amministratore facendo clic con il tasto destro del mouse sull'icona PowerShell e selezionando Esegui come amministratore.
Per riavviare l'agente, esegui il seguente comando PowerShell:
Restart-Service google-cloud-ops-agent -Force
Per verificare che l'agente sia stato riavviato, esegui il seguente comando e verifica che i componenti "Agente Metriche" e "Agente Logging" siano stati avviati:
Get-Service google-cloud-ops-agent*
Metriche Prometheus in Cloud Monitoring
Puoi utilizzare gli strumenti forniti da Cloud Monitoring con i dati raccolti dal ricevitore Prometheus. Ad esempio, puoi creare grafici dei dati utilizzando Esplora metriche, come descritto nella consoleGoogle Cloud per Monitoring. Le sezioni seguenti descrivono gli strumenti di query disponibili in Cloud Monitoring conMetrics Explorere:
Puoi creare dashboard e criteri di avviso di Cloud Monitoring per le tue metriche. Per informazioni sulle dashboard e sui tipi di grafici che puoi utilizzare, consulta Dashboard e grafici. Per informazioni sui criteri di avviso, consulta Utilizzo dei criteri di avviso.
Puoi anche visualizzare le metriche in altre interfacce, come l'interfaccia utente di Prometheus e Grafana. Per informazioni sulla configurazione di queste interfacce, consulta le seguenti sezioni della documentazione di Google Cloud Managed Service per Prometheus:
Utilizzare PromQL
PromQL è il linguaggio di query consigliato per le metriche importate utilizzando il ricevitore Prometheus.
Il modo più semplice per verificare che i dati di Prometheus vengano inseriti è utilizzare la pagina Esplora metriche di Cloud Monitoring nella console Google Cloud :
-
Nella console Google Cloud , vai alla pagina leaderboard Esplora metriche:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
Nella barra degli strumenti del riquadro Query Builder, seleziona il pulsante il cui nome è code MQL o code PromQL.
Verifica che PromQL sia selezionato nel pulsante di attivazione/disattivazione Lingua. Il pulsante di attivazione/disattivazione della lingua si trova nella stessa barra degli strumenti che ti consente di formattare la query.
Inserisci la seguente query nell'editor, e poi fai clic su Esegui query:
up
Se i dati vengono importati, vedrai un grafico simile al seguente:
Se esegui l'esempio di esportatore JSON, puoi anche eseguire query come la seguente:
Esegui query su tutti i dati per una metrica esportata specifica in base al nome, ad esempio:
example_value_count
Di seguito è riportato un grafico per
example_value_count
, incluse le etichette definite dall'applicazione JSON Exporter e le etichette aggiunte dall'Ops Agent:Esegui query sui dati per una metrica esportata che ha avuto origine in uno spazio dei nomi specifico. Il valore dell'etichetta
namespace
è l'ID istanza di Compute Engine, un numero lungo come5671897148133813325
, assegnato alla VM. Una query è simile alla seguente:example_value_count{namespace="INSTANCE_ID"}
Esegui query sui dati che corrispondono a un'espressione regolare specifica. L'esportatore JSON emette metriche con un'etichetta
id
che ha valori comeid-A
,id-B
,id-C
. Per filtrare le metriche con un'etichettaid
corrispondente a questo pattern, utilizza la seguente query:example_value_count{id=~"id.*"}
Per ulteriori informazioni sull'utilizzo di PromQL in Metrics Explorer e nei grafici di Cloud Monitoring, consulta PromQL in Cloud Monitoring.
Visualizza l'utilizzo e la diagnostica delle metriche in Cloud Monitoring
La pagina Gestione delle metriche di Cloud Monitoring fornisce informazioni che possono aiutarti a controllare l'importo che spendi per le metriche fatturabili senza influire sull'osservabilità. La pagina Gestione delle metriche riporta le seguenti informazioni:
- Volumi di importazione per la fatturazione basata su byte e campioni, in tutti i domini delle metriche e per le singole metriche.
- Dati su etichette e cardinalità delle metriche.
- Numero di letture per ogni metrica.
- Utilizzo delle metriche nelle policy di avviso e nelle dashboard personalizzate.
- Tasso di errori di scrittura delle metriche.
Puoi anche utilizzare la pagina Gestione metriche per escludere le metriche non necessarie, eliminando il costo della loro importazione.
Per visualizzare la pagina Gestione metriche:
-
Nella console Google Cloud , vai alla pagina
Gestione delle metriche:Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti, seleziona la finestra temporale. Per impostazione predefinita, nella pagina Gestione metriche vengono visualizzate le informazioni sulle metriche raccolte nel giorno precedente.
Per maggiori informazioni sulla pagina Gestione metriche, consulta Visualizzare e gestire l'utilizzo delle metriche.
Rietichettatura: modifica dei dati sottoposti a scraping
Puoi utilizzare l'assegnazione di nuove etichette per modificare il set di etichette della destinazione di scraping o le relative metriche prima che venga eseguito lo scraping della destinazione. Se hai più passaggi in una configurazione di rietichettatura, questi vengono applicati nell'ordine in cui vengono visualizzati nel file di configurazione.
L'agente operativo crea un insieme di metaetichette (etichette con il prefisso
__meta_
). Queste etichette meta registrano informazioni sull'istanza Compute Engine su cui è in esecuzione Ops Agent. Le etichette con il prefisso __
, incluse le metaetichette,
sono disponibili solo durante la rietichettatura. Puoi utilizzare l'assegnazione di nuove etichette per acquisire i valori di queste etichette in quelle sottoposte a scraping.
Il nuovo etichettamento delle metriche viene applicato ai campioni ed è l'ultimo passaggio prima dell'importazione. Puoi utilizzare l'etichettatura delle metriche per eliminare le serie temporali che non devi importare. L'eliminazione di queste serie temporali riduce il numero di campioni importati, il che può ridurre i costi.
Per saperne di più sull'assegnazione di nuove etichette, consulta la documentazione di Prometheus
per relabel_config
e
metric_relabel_configs
.
Etichette meta di Compute Engine disponibili durante la rietichettatura
Quando Ops Agent estrae le metriche, include un insieme di metaetichette i cui
valori si basano sulla configurazione della VM Compute Engine su cui
è in esecuzione l'agente. Puoi utilizzare queste etichette e la sezione
relabel_configs
del ricevitore Prometheus per aggiungere metadati aggiuntivi alle metriche relative
alla VM da cui sono state importate. Per un esempio, vedi
Configurazione aggiuntiva del destinatario.
Sono disponibili le seguenti metaetichette sui target da utilizzare nella sezione
relabel_configs
:
__meta_gce_instance_id
: l'ID numerico dell'istanza di Compute Engine (locale)__meta_gce_instance_name
: il nome dell'istanza Compute Engine (locale); Ops Agent inserisce automaticamente questo valore nell'etichetta modificabileinstance_name
nelle metriche.__meta_gce_machine_type
: l'URL completo o parziale del tipo di macchina dell'istanza; Ops Agent inserisce automaticamente questo valore nell'etichetta modificabilemachine_type
delle metriche.__meta_gce_metadata_NAME
: ogni elemento dei metadati dell'istanza__meta_gce_network
: l'URL di rete dell'istanza__meta_gce_private_ip
: l'indirizzo IP privato dell'istanza__meta_gce_interface_ipv4_NAME
: Indirizzo IPv4 di ogni interfaccia denominata__meta_gce_project
: il Google Cloud progetto in cui è in esecuzione l'istanza (locale)__meta_gce_public_ip
: l'indirizzo IP pubblico dell'istanza, se presente__meta_gce_tags
: elenco di tag dell'istanza separati da virgole__meta_gce_zone
: l'URL della zona Compute Engine in cui è in esecuzione l'istanza
I valori di queste etichette vengono impostati all'avvio di Ops Agent. Se modifichi i valori, devi riavviare Ops Agent per aggiornarli.
Configurazione aggiuntiva del ricevitore
Questa sezione fornisce esempi che utilizzano le sezioni relabel_configs
e
metric_relabel_configs
del ricevitore Prometheus per modificare
il numero e la struttura delle metriche importate. Questa sezione include anche
una versione modificata del ricevitore per l'esempio di esportatore JSON che utilizza
le opzioni di riassegnazione delle etichette.
Aggiungere metadati VM
Puoi utilizzare la sezione relabel_configs
per aggiungere etichette alle metriche.
Ad esempio, il seguente utilizza un'etichetta meta, __meta_gce_zone
, fornita dall'Ops Agent per creare un'etichetta metrica, zone
, che viene conservata dopo la rietichettatura, perché zone
non ha il prefisso __
.
Per un elenco delle etichette meta disponibili, consulta Etichette meta di Compute Engine disponibili durante l'assegnazione di nuove etichette. Alcune delle etichette dei metadati vengono riassegnate automaticamente dalla configurazione predefinita di Ops Agent.
relabel_configs: - source_labels: [__meta_gce_zone] regex: '(.+)' replacement: '${1}' target_label: zone
Il ricevitore Prometheus mostrato in Esempio: configura Ops Agent per Prometheus include l'aggiunta di questa etichetta.
Metriche di abbandono
Puoi utilizzare la sezione metrics_relabel_configs
per eliminare le metriche che non vuoi importare. Questo pattern è utile per il contenimento dei costi.
Ad esempio, puoi utilizzare il seguente pattern per eliminare qualsiasi metrica con
un nome che corrisponde a METRIC_NAME_REGEX_1 o METRIC_NAME_REGEX_2:
metric_relabel_configs: - source_labels: [ __name__ ] regex: 'METRIC_NAME_REGEX_1' action: drop - source_labels: [ __name__ ] regex: 'METRIC_NAME_REGEX_2' action: drop
Aggiungere etichette statiche
Puoi utilizzare la sezione metrics_relabel_configs
per aggiungere etichette statiche a
tutte le metriche inserite dal ricevitore Prometheus. Puoi utilizzare il seguente
pattern per aggiungere le etichette staticLabel1
e staticLabel2
a tutte le metriche importate:
metric_relabel_configs: - source_labels: [ __address__ ] action: replace replacement: 'STATIC_VALUE_1' target_label: staticLabel1 - source_labels: [ __address__ ] action: replace replacement: 'STATIC_VALUE_2' target_label: staticLabel2
La seguente versione del ricevitore Prometheus per l'esempio di esportatore JSON utilizza questi pattern di configurazione per:
- Imposta l'etichetta
zone
dal valore dell'etichetta meta__meta_gce_zone
fornita da Ops Agent. - Elimina la metrica
example_global_value
dell'esportatore. - Aggiungi l'etichetta
staticLabel
con il valore "Un valore statico" a tutte le metriche inserite.
metrics: receivers: prometheus: type: prometheus config: scrape_configs: - job_name: 'json_exporter' scrape_interval: 10s metrics_path: /probe params: module: [default] target: [http://localhost:8000/examples/data.json] static_configs: - targets: ['localhost:7979'] relabel_configs: - source_labels: [__meta_gce_zone] regex: '(.+)' replacement: '${1}' target_label: zone metric_relabel_configs: - source_labels: [ __name__ ] regex: 'example_global_value' action: drop - source_labels: [ __address__ ] action: replace replacement: 'A static value' target_label: staticLabel