Dopo aver eseguito il deployment di Google Cloud Managed Service per Prometheus, puoi eseguire query sui dati inviati al servizio gestito per visualizzare i risultati in grafici e dashboard.
Questo documento descrive gli ambiti delle metriche, che determinano i dati su cui puoi eseguire query, e i seguenti modi basati su Prometheus per recuperare e utilizzare i dati raccolti:
- L'API HTTP Prometheus
- Interfaccia utente di Prometheus
Tutte le interfacce di query per Managed Service per Prometheus sono configurate per recuperare i dati da Monarch utilizzando l'API Cloud Monitoring. Di l'esecuzione di query su Monarch anziché sui dati provenienti da server Prometheus locali, ottieni un monitoraggio globale su larga scala.
Prima di iniziare
Se non hai già eseguito il deployment del servizio gestito, quindi configura una raccolta gestita o di cui è stato eseguito il deployment autonomo personalizzata. Puoi saltare questo passaggio se ti interessa solo eseguire query sulle metriche di Cloud Monitoring utilizzando PromQL.
Configura il tuo ambiente
Per evitare di inserire ripetutamente l'ID progetto o il nome del cluster, esegui la seguente configurazione:
Configura gli strumenti a riga di comando come segue:
Configura gcloud CLI per fare riferimento all'ID del tuo Progetto Google Cloud:
gcloud config set project PROJECT_ID
Configura l'interfaccia a riga di comando
kubectl
per utilizzare il tuo cluster:kubectl config set-cluster CLUSTER_NAME
Per ulteriori informazioni su questi strumenti, consulta le seguenti risorse:
Configura uno spazio dei nomi
Crea lo spazio dei nomi Kubernetes NAMESPACE_NAME
per le risorse create
nell'ambito dell'applicazione di esempio:
kubectl create ns NAMESPACE_NAME
Verifica le credenziali dell'account di servizio
Puoi saltare questa sezione se il tuo cluster Kubernetes Federazione delle identità dei carichi di lavoro per GKE abilitata.
In esecuzione su GKE, Managed Service per Prometheus
recupera automaticamente le credenziali dall'ambiente in base
Account di servizio predefinito Compute Engine. L'account di servizio predefinito ha
le autorizzazioni necessarie, monitoring.metricWriter
e monitoring.viewer
,
predefinito. Se non utilizzi la federazione delle identità per i carichi di lavoro per GKE e in precedenza avevi
rimosso uno di questi ruoli dall'account di servizio del nodo predefinito,
Devi aggiungere di nuovo le autorizzazioni mancanti prima di continuare.
Se non esegui su GKE, consulta Fornisci le credenziali in modo esplicito.
Configura un account di servizio per la federazione delle identità per i carichi di lavoro per GKE
Puoi saltare questa sezione se il tuo cluster Kubernetes non dispone Federazione delle identità dei carichi di lavoro per GKE abilitata.
Managed Service per Prometheus acquisisce i dati delle metriche utilizzando l'API Cloud Monitoring. Se il cluster utilizza la federazione delle identità per i carichi di lavoro per GKE, devi concedere al tuo account di servizio Kubernetes l'autorizzazione l'API Monitoring. Questa sezione descrive quanto segue:
- Creazione di un account di servizio Google Cloud dedicato.
gmp-test-sa
. - Associa l'account di servizio Google Cloud all'account di servizio Kubernetes predefinito in uno spazio dei nomi di test,
NAMESPACE_NAME
. - Concedi l'autorizzazione necessaria all'account di servizio Google Cloud.
Crea e associa l'account di servizio
Questo passaggio viene visualizzato in diversi punti della documentazione di Managed Service per Prometheus. Se hai già eseguito questo passaggio nell'ambito di un'attività precedente, non devi ripeterlo. Vai avanti e vai alla sezione Autorizzare dell'account di servizio.
La seguente sequenza di comandi crea l'account di servizio gmp-test-sa
e lo associa all'account di servizio Kubernetes predefinito nello
spazio dei nomi NAMESPACE_NAME
:
gcloud config set project PROJECT_ID \ && gcloud iam service-accounts create gmp-test-sa \ && gcloud iam service-accounts add-iam-policy-binding \ --role roles/iam.workloadIdentityUser \ --member "serviceAccount:PROJECT_ID.svc.id.goog[NAMESPACE_NAME/default]" \ gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com \ && kubectl annotate serviceaccount \ --namespace NAMESPACE_NAME \ default \ iam.gke.io/gcp-service-account=gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com
Se utilizzi uno spazio dei nomi o un account di servizio GKE diverso, aggiusta i comandi di conseguenza.
Autorizza l'account di servizio
I gruppi di autorizzazioni correlate vengono raccolti in ruoli e si assegnano i ruoli a un'entità. In questo esempio, il cluster Google Cloud l'account di servizio. Per ulteriori informazioni sui ruoli di monitoraggio, consulta Controllo dell'accesso.
Il seguente comando concede all'account di servizio Google Cloud,gmp-test-sa
, i ruoli dell'API Monitoring di cui ha bisogno per leggere i dati delle metriche.
Se hai già concesso all'account di servizio Google Cloud un ruolo specifico nell'ambito di un'attività precedente, non devi ripetere l'operazione.
Per autorizzare il tuo account di servizio a leggere da un dell'ambito delle metriche multiprogetto, segui queste istruzioni e controlla Cambia il progetto su cui è stata eseguita la query.gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com \ --role=roles/monitoring.viewer
Esegui il debug della configurazione della federazione delle identità per i carichi di lavoro per GKE
Se hai difficoltà a far funzionare la federazione delle identità per i carichi di lavoro per GKE, consulta documentazione per la verifica della configurazione della federazione delle identità per i carichi di lavoro per GKE e la guida alla risoluzione dei problemi relativi alla federazione delle identità per i carichi di lavoro per GKE.
Poiché gli errori di battitura e i testi incollati parziali sono le fonti più comuni di errori quando configurazione della federazione delle identità per i carichi di lavoro per GKE, consigliamo vivamente l'uso del variabili e icone di copia e incolla cliccabili incorporate negli esempi di codice in questi istruzioni.
Workload Identity Federation for GKE negli ambienti di produzione
L'esempio descritto in questo documento associa il servizio Google Cloud di servizio all'account di servizio Kubernetes predefinito e fornisce a Google Cloud all'account di servizio di tutte le autorizzazioni necessarie per utilizzare l'API Monitoring.
In un ambiente di produzione, ti consigliamo di utilizzare un approccio più granulare, con un account di servizio per ogni componente, ciascuno con autorizzazioni minime. Per ulteriori informazioni sulla configurazione degli account di servizio per gestione dei carichi di lavoro e delle identità, consulta Utilizzo della federazione delle identità per i carichi di lavoro per GKE.
Ambiti di query e metriche
I dati su cui puoi eseguire query sono determinati dall'ambito delle metriche del costrutto Cloud Monitoring, indipendentemente dal metodo utilizzato per eseguire query sui dati. Ad esempio, se utilizzi Grafana per eseguire query sui dati di Managed Service per Prometheus, ogni ambito delle metriche deve essere configurato come origine dati separata.
Un ambito delle metriche di monitoraggio è un costrutto di sola lettura che consente di eseguire query sui dati delle metriche appartenenti a più progetti Google Cloud. Ogni evento l'ambito delle metriche è ospitato da un progetto Google Cloud designato, chiamato progetto di ambito.
Per impostazione predefinita, un progetto è il progetto di definizione dell'ambito per il proprio ambito delle metriche, e l'ambito delle metriche contiene le metriche e la configurazione necessarie progetto. Un progetto di definizione dell'ambito può avere più di un progetto monitorato nel suo ambito delle metriche e le metriche e le configurazioni di tutti i progetti monitorati nell'ambito delle metriche sono visibili al progetto di definizione dell'ambito. R progetto monitorato può anche appartenere a più di un ambito delle metriche.
Quando esegui una query sulle metriche in un progetto di definizione dell'ambito e se il progetto di ambito ospita un ambito delle metriche multiprogetto, puoi recuperare da più progetti. Se l'ambito delle metriche contiene tutti i tuoi progetti, le query e le regole verranno valutate a livello globale.
Per saperne di più sulla definizione dell'ambito dei progetti e dell'ambito delle metriche, consulta Ambiti delle metriche. Per informazioni sulla configurazione dell'ambito delle metriche per più progetti, consulta Visualizzare le metriche per più progetti.
Dati di Managed Service per Prometheus in Cloud Monitoring
Il modo più semplice per verificare che i dati di Prometheus vengano esportati è utilizzare la pagina Metrics Explorer di Cloud Monitoring nella console Google Cloud, che supporta PromQL. Per istruzioni, vedi Esecuzione di query utilizzando PromQL in Cloud Monitoring.
UI frontend Prometheus autonoma
Puoi utilizzare l'interfaccia utente frontend di Prometheus autonoma per accedere ai dati importati e visualizzarli. Questa UI esegue query PromQL su tutti i dati nel tuo progetto Google Cloud, come determinato dall'ambito delle metriche associato al tuo progetto.
L'interfaccia utente del frontend funge anche da proxy di autenticazione per l'accesso ai dati importati
e i dati di Google Cloud. Questa funzionalità può essere utilizzata per gli strumenti client che non supportano OAuth2 per gli account di servizio, tra cui Grafana o l'autoscaling orizzontale dei pod utilizzando la libreria prometheus-adapter
.
Ti consigliamo vivamente di configurare Grafana per visualizzare i dati di Managed Service per Prometheus utilizzando il sincronizzatore delle origini dati. Le istruzioni per la configurazione di Grafana utilizzando l'interfaccia utente frontend Prometheus autonoma sono incluse qui come riferimento per gli utenti che hanno già configurato Grafana utilizzando questo metodo.
Esegui il deployment della UI frontend
Per eseguire il deployment dell'interfaccia utente frontend di Prometheus autonoma per Managed Service per Prometheus, esegui i seguenti comandi:
Esegui il deployment del servizio
frontend
e configuralo per eseguire query sul progetto di ambito dell'ambito delle metriche che preferisci:curl https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/v0.13.0/examples/frontend.yaml | sed 's/\$PROJECT_ID/PROJECT_ID/' | kubectl apply -n NAMESPACE_NAME -f -
Inoltra la porta del servizio
frontend
alla tua macchina locale. L'esempio seguente inoltra il servizio alla porta 9090:kubectl -n NAMESPACE_NAME port-forward svc/frontend 9090
Questo comando non restituisce alcun valore e, durante l'esecuzione, registra gli accessi all'URL.
Se vuoi continuare a utilizzare un deployment Grafana installato da kube-prometheus,
quindi esegui il deployment dell'interfaccia utente frontend Prometheus autonoma nello spazio dei nomi monitoring
.
Puoi accedere all'interfaccia utente frontend Prometheus autonoma nel tuo browser all'URL
http://localhost:9090
. Se in questo passaggio utilizzi Cloud Shell, puoi
ottenere l'accesso utilizzando il pulsante Anteprima web.
Lo screenshot seguente mostra una tabella nel frontend autonomo di Prometheus
UI che mostra la metrica up
:
Puoi anche configurare l'autenticazione e l'autorizzazione appropriate sul servizio frontend
utilizzando, ad esempio, Identity-Aware Proxy.
Per ulteriori informazioni sull'esposizione dei servizi, consulta l'articolo sull'esposizione delle applicazioni utilizzando
Google Cloud.
Modifica il progetto su cui è stata eseguita la query per ottenere il monitoraggio multiprogetto
Il deployment frontend
utilizza il progetto Google Cloud configurato come
progetto di definizione dell'ambito. Se questo progetto è il progetto di definizione dell'ambito di un
ambito delle metriche multi-project, può leggere le metriche di tutti
i progetti nell'ambito delle metriche.
Puoi specificare un progetto con un ambito delle metriche multi-progetto utilizzando il
--query.project-id
flag.
In genere, utilizzi un progetto dedicato come progetto di definizione dell'ambito e questo progetto non è lo stesso in cui viene eseguito il deployment di frontend
.
Per consentire al deployment di leggere un progetto di destinazione diverso, devi eseguire
seguenti:
- Indica al deployment
frontend
il progetto di destinazione. Concedi all'account di servizio l'autorizzazione a leggere il progetto di destinazione. Se hai utilizzato l'account di servizio
default
di Compute Engine, puoi effettuare una delle seguenti operazioni:Abilita la federazione delle identità per i carichi di lavoro per GKE per il tuo cluster e segui i passaggi di configurazione.
Fornisci una chiave esplicita dell'account di servizio.
Per concedere le autorizzazioni necessarie per accedere a un altro progetto Google Cloud, segui questi passaggi:
Concedi all'account di servizio l'autorizzazione a leggere dal progetto di destinazione su cui vuoi eseguire una query:
gcloud projects add-iam-policy-binding SCOPING_PROJECT_ID \ --member=serviceAccount:gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com \ --role=roles/monitoring.viewer
Apri il deployment
frontend
creato in precedenza per la modifica:kubectl -n NAMESPACE_NAME edit deploy frontend
Specifica il progetto di destinazione utilizzando il flag
--query.project-id
:apiVersion: apps/v1 kind: Deployment metadata: namespace: NAMESPACE_NAME name: frontend spec: template containers: - name: frontend args: - --query.project-id=SCOPING_PROJECT_ID ...
Salva il file e chiudi l'editor. Dopo l'applicazione della modifica, i pod frontend vengono riavviati ed eseguono query sul nuovo progetto di ambito.
Autentica l'interfaccia utente frontend
Il deployment frontend
supporta
autenticazione dell'accesso di base
per l'accesso autenticato nelle versioni 0.5.0 e successive. Per attivare l'autenticazione,
aggiungi le variabili di ambiente AUTH_USERNAME
e AUTH_PASSWORD
al
deployment:
apiVersion: apps/v1 kind: Deployment metadata: namespace: NAMESPACE_NAME name: frontend spec: template containers: - name: frontend env: - name: AUTH_USERNAME value: USERNAME - name: AUTH_PASSWORD value: PASSWORD ...
Fornisci le credenziali in modo esplicito
Puoi saltare questa sezione se esegui il container frontend
in un cluster Google Kubernetes Engine. Se hai problemi di autenticazione
GKE, consulta Verificare le credenziali dell'account di servizio.
Quando viene eseguito su GKE, il frontend recupera automaticamente le credenziali dall'ambiente in base all'account di servizio del nodo o alla configurazione di Workload Identity Federation for GKE.
Nei cluster Kubernetes non GKE, le credenziali devono essere fornite esplicitamente al frontend utilizzando i flag o la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS
.
Imposta il contesto sul progetto di destinazione:
gcloud config set project PROJECT_ID
Crea un account di servizio:
gcloud iam service-accounts create gmp-test-sa
Questo passaggio crea l'account di servizio che potresti avere già creati nel Istruzioni per la federazione delle identità per i carichi di lavoro per GKE.
Concedi le autorizzazioni richieste all'account di servizio:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com \ --role=roles/monitoring.viewer
Crea e scarica una chiave per l'account di servizio:
gcloud iam service-accounts keys create gmp-test-sa-key.json \ --iam-account=gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com
Aggiungi il file della chiave come secret al cluster non GKE:
kubectl -n NAMESPACE_NAME create secret generic gmp-test-sa \ --from-file=key.json=gmp-test-sa-key.json
Apri la risorsa di deployment frontend per la modifica:
kubectl -n NAMESPACE_NAME edit deploy frontend
Aggiungi il testo visualizzato in grassetto alla risorsa:
apiVersion: apps/v1 kind: Deployment metadata: namespace: NAMESPACE_NAME name: frontend spec: template containers: - name: frontend args: - --query.credentials-file=/gmp/key.json ... volumeMounts: - name: gmp-sa mountPath: /gmp readOnly: true ... volumes: - name: gmp-sa secret: secretName: gmp-test-sa ...
Salva il file e chiudi l'editor. Una volta applicata la modifica, vengono ricreati e avviano l'autenticazione nella metrica con l'account di servizio specificato.
GOOGLE_APPLICATION_CREDENTIALS
variabile di ambiente.Utilizzo di Grafana tramite il proxy frontend
Managed Service per Prometheus utilizza l'origine dati Prometheus integrata per Grafana, il che significa che puoi continuare a utilizzare qualsiasi dashboard Grafana personale o creata dalla community senza alcuna modifica. Puoi anche importare le dashboard di Grafana in Cloud Monitoring.
Autenticazione nelle API Google Cloud
Tutte le API Google Cloud richiedono l'autenticazione tramite OAuth2. Tuttavia, Grafana non supporta l'autenticazione OAuth2 per gli account di servizio utilizzati con le origini dati Prometheus. Per utilizzare Grafana con Managed Service per Prometheus, puoi utilizzare la UI autonoma di frontend Prometheus come proxy di autenticazione.
Devi indirizzare Grafana al proxy dell'interfaccia utente frontend autonomo per eseguire query sui dati a livello globale. Se non segui questi passaggi, Grafana eseguirà query solo sui dati nel server Prometheus locale.
Se non hai già eseguito il deployment della UI di Prometheus
frontend
come proxy, eseguine il deployment eseguendo questo comando:curl https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/v0.13.0/examples/frontend.yaml | sed 's/\$PROJECT_ID/PROJECT_ID/' | kubectl apply -n NAMESPACE_NAME -f -
Per i cluster Kubernetes non GKE, come i cluster Anthos, consulta anche Fornire le credenziali in modo esplicito per concedere al servizio
frontend
le autorizzazioni necessarie per eseguire query sulle metriche.Consulta modificare il progetto sottoposto a query per istruzioni su come configurare l'ambito delle metriche utilizzato dal servizio
frontend
per eseguire query su più progetti.Se hai un deployment Grafana preesistente, ad esempio uno installato
kube-prometheus
libreria o una libreria installata utilizzando un grafico Helm, tu può continuare a utilizzarlo con Managed Service per Prometheus. Se sì, Per i passaggi successivi, consulta Configurare un'origine dati. In caso contrario, devi prima eseguire il deployment di Grafana.Esegui il deployment di Grafana
Se nel tuo cluster non è in esecuzione un deployment Grafana, puoi e creare un deployment di test temporaneo su cui eseguire esperimenti.
Per creare un deployment temporaneo di Grafana, applica il manifest
grafana.yaml
di Managed Service per Prometheus al tuo cluster e inoltra la porta del serviziografana
alla tua macchina locale. Nell'esempio seguente il servizio viene inoltrato alla porta 3000.Applica il manifest
grafana.yaml
:kubectl -n NAMESPACE_NAME apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/beb779d32f4dd531a3faad9f2916617b8d9baefd/examples/grafana.yaml
Esegui il port forwarding del servizio
grafana
alla tua macchina locale. Questo esempio inoltra il servizio alla porta 3000:kubectl -n NAMESPACE_NAME port-forward svc/grafana 3000
Questo comando non restituisce alcun valore e, durante l'esecuzione, registra gli accessi all'URL.
Puoi accedere a Grafana nel browser all'URL
http://localhost:3000
con il nome utente:passwordadmin:admin
.
Configurare un'origine dati
Per eseguire query su Managed Service per Prometheus in Grafana utilizzando Prometheus UI come proxy di autenticazione, devi aggiungere una nuova origine dati a Grafana. Per aggiungere un'origine dati per il servizio gestito, segui questi passaggi:
Vai al tuo deployment di Grafana, ad esempio visitando l'URL
http://localhost:3000
per raggiungere la pagina di benvenuto di Grafana.Seleziona Configuration (Configurazione) dal menu principale di Grafana, quindi seleziona Origini dati.
Seleziona Aggiungi origine dati e Prometheus come database delle serie temporali.
Nel campo URL del riquadro HTTP, inserisci l'URL del Managed Service per il servizio
frontend
Prometheus. Se hai configurato l'interfaccia utente frontend di Prometheus in modo che venga eseguita sulla porta 9090, l'URL del servizio per questo campo èhttp://frontend.NAMESPACE_NAME.svc:9090
.Nel campo Timeout del riquadro HTTP, imposta il valore su
120
.Se hai configurato il proxy dell'interfaccia utente frontend con l'autenticazione di base, attiva l'opzione Autorizzazione di base nel riquadro Autorizzazione e compila nome utente e password.
Nel campo Timeout query, imposta il valore su
2m
.Nel campo HTTP Method (Metodo HTTP), seleziona
GET
.Nel campo Tipo di Prometheus, seleziona
Prometheus
.Nel campo Versione Prometheus, seleziona
2.40.x
o versioni successive.Se disponi di più origini dati Prometheus, puoi fornire questo un nome come "Managed Prometheus Service". Puoi lasciare invariati i valori predefiniti degli altri campi.
Fai clic su Salva ed esegui il test e cerca il messaggio "L'origine dati è funzionante".
Utilizzare la nuova origine dati
Ora puoi creare dashboard Grafana utilizzando la nuova origine dati. Puoi anche reindirizzare le dashboard esistenti alla nuova origine dati. Il seguente screenshot mostra un grafico Grafana che mostra la metrica
up
:Connessione di Managed Service per Prometheus a Thanos
Puoi federare Managed Service per Prometheus a un deployment autonomo Thanos si sovrappone per utilizzando il connettore open source thanos-promql-connector. Google Cloud non fornisce assistenza per questa integrazione.
API HTTP Prometheus
Managed Service per Prometheus supporta l'API HTTP Prometheus a monte nell'URL con prefisso
https://monitoring.googleapis.com/v1/projects/PROJECT_ID/location/global/prometheus/api/v1/
. Per informazioni sugli endpoint supportati, consulta Compatibilità dell'API.È possibile accedere a questa API da qualsiasi strumento in grado di interagire con un Server Prometheus. Si tratta solo di un endpoint API; non viene visualizzata un'interfaccia utente. In qualità di API Google Cloud, l'API utilizza l'autenticazione OAuth2 e, nell'ambito dell'API Cloud Monitoring, il valore di
PROJECT_ID
è il progetto di ambito di un ambito delle metriche, in modo da poter recuperare i dati da qualsiasi progetto nell'ambito delle metriche. Per ulteriori informazioni sulla definizione dell'ambito, consulta Ambiti delle metriche.Per utilizzare questo endpoint, fornisci un'espressione PromQL. Ad esempio, la seguente query istantanea recupera tutte le serie temporali con il nome della metrica
up
:curl https://monitoring.googleapis.com/v1/projects/PROJECT_ID/location/global/prometheus/api/v1/query \ -d "query=up" \ -H "Authorization: Bearer $(gcloud auth print-access-token)"
Se la richiesta va a buon fine, la query restituisce un risultato come il seguente, che è stato formattato per la leggibilità:
{ "status":"success", "data":{ "resultType":"vector", "result":[{ "metric": { "__name__":"up", "cluster":"gmp-test", "instance":"prom-example-84c6f547f5-g4ljn:web", "job":"prometheus", "location":"us-central1-a", "project_id":"a-gcp-project" }, "value": [1634873239.971,"1"] }] } }
Per informazioni sulle query Metriche di sistema Google Cloud che utilizzano PromQL, consulta PromQL per Metriche di Cloud Monitoring.
Compatibilità con le API
I seguenti endpoint dell'API HTTP Prometheus sono supportato da Managed Service per Prometheus con l'URL preceduto da
https://monitoring.googleapis.com/v1/projects/PROJECT_ID/location/global/prometheus/api/v1/
.Per la documentazione completa, consulta la documentazione di riferimento dell'API Cloud Monitoring. Gli endpoint HTTP di Promethus non sono disponibili nelle librerie client specifiche per i linguaggi di Cloud Monitoring.
Per informazioni sulla compatibilità di PromQL, consulta il supporto di PromQL.
I seguenti endpoint sono completamente supportati:
/api/v1/query
/api/v1/query_range
/api/v1/metadata
/api/v1/labels
/api/v1/query_exemplars
L'endpoint
/api/v1/label/<label_name>/values
funziona solo se l'etichetta__name__
viene fornita utilizzandola come valore<label_name>
o tramite una corrispondenza esatta utilizzando un selettore di serie. Ad esempio, completamente supportate:/api/v1/label/__name__/values
/api/v1/label/__name__/values?match[]={__name__=~".*metricname.*"}
/api/v1/label/labelname/values?match[]={__name__="metricname"}
Questa limitazione fa sì che le query sulle variabili
label_values($label)
in Grafana non vadano a buon fine. In alternativa, puoi utilizzarelabel_values($metric, $label)
. Questo tipo di query è consigliato perché evita di recuperare i valori per le etichette sulle metriche che non sono pertinenti per la dashboard specificata.L'endpoint
/api/v1/series
è supportato per le richiesteGET
, ma nonPOST
. Quando utilizzi lo strumento di sincronizzazione dell'origine dati o il frontend proxy, questa limitazione è gestita automaticamente. Puoi anche configura le origini dati Prometheus in Grafana in modo che emettano soloGET
richieste. Il parametromatch[]
non supporta la corrispondenza delle espressioni regolari sull'etichetta__name__
.