Cloud Monitoring offre funzionalità avanzate di logging e diagnostica. Dataflow l'integrazione con Monitoring consente di accedere a Dataflow metriche dei job come stato del job, conteggi di elementi, ritardo di sistema (per job di flussi di dati), e i contatori degli utenti dalle dashboard di Monitoring. Puoi anche utilizzare Monitoraggio degli avvisi per informarti di vari ad esempio un lungo ritardo di sistema di flusso o job non riusciti.
Prima di iniziare
Segui la guida rapida di Java. guida rapida di Python, oppure Goditi la guida rapida per configurare il tuo progetto Dataflow. Poi, costruire ed eseguire la pipeline.
Per visualizzare i log in Metrics Explorer,
account di servizio worker
deve avere il ruolo roles/monitoring.metricWriter
.
Metriche personalizzate
Qualsiasi metrica definita nella pipeline Apache Beam viene riportata da
Da Dataflow a Monitoring come metrica personalizzata.
Apache Beam
tre tipi di metriche della pipeline:
Counter
, Distribution
e Gauge
.
- Dataflow segnala le metriche
Counter
eDistribution
a Monitoring. Distribution
viene riportato come quattro metriche secondarie con suffisso_MAX
,_MIN
,_MEAN
e_COUNT
.- Dataflow non supporta la creazione di un istogramma dalle metriche
Distribution
. - Dataflow segnala aggiornamenti incrementali a Monitoring ogni 30 secondi circa.
- Per evitare conflitti, tutte le metriche personalizzate di Dataflow
esportato come tipo di dati
double
. Per semplicità, tutte le metriche personalizzate di Dataflow esportato come un tipo di metrica
GAUGE
. Puoi monitorare il delta in una finestra temporale per una metricaGAUGE
, come mostrato nel seguente Esempio di Monitoring Query Language:fetch dataflow_job | metric 'dataflow.googleapis.com/job/user_counter' | filter (metric.job_id == '[JobID]') | delta 1m | group_by 1m, [value_user_counter_mean: mean(value.user_counter)] | every 1m | group_by [metric.ptransform, metric.metric_name], [value_user_counter_mean_aggregate: aggregate(value_user_counter_mean)]
Le metriche personalizzate di Dataflow vengono visualizzate in Monitoring come segue:
dataflow.googleapis.com/job/user_counter
con le etichettemetric_name: metric-name
eptransform: ptransform-name
.Per garantire la compatibilità con le versioni precedenti, Dataflow segnala anche metriche personalizzate a Monitoring come
custom.googleapis.com/dataflow/metric-name
.Le metriche personalizzate di Dataflow sono soggette alla limitazione della cardinalità in Monitoring.
Ogni progetto ha un limite di 100 metriche personalizzate di Dataflow. Queste metriche vengono pubblicate come
custom.googleapis.com/dataflow/metric-name
.
Le metriche personalizzate segnalate a Monitoring comportano addebiti in base alla Prezzi di Cloud Monitoring.
Utilizza Esplora metriche
Utilizza Monitoraggio per esplorare le metriche di Dataflow. Segui i passaggi in questa sezione per osservare le metriche standard fornite per ciascuna delle tue pipeline Apache Beam. Per ulteriori informazioni sull'utilizzo di Metrics Explorer, consulta Crea grafici con Esplora metriche.
Nella console Google Cloud, seleziona Monitoring:
Nel riquadro di navigazione, seleziona Esplora metriche.
Nel riquadro Seleziona una metrica, inserisci
Dataflow Job
nel filtro.Nell'elenco visualizzato, seleziona una metrica da osservare per uno dei seguenti elementi: per i tuoi lavori.
Quando esegui job Dataflow, potresti anche voler monitorare le metriche per le tue origini e i tuoi sink. Ad esempio, potresti voler monitorare le metriche dell'API BigQuery Storage. Per ulteriori informazioni, vedi Creare dashboard, grafici e avvisi e l'elenco completo delle metriche di BigQuery Data Transfer Service.
Crea criteri e dashboard di avviso
Monitoring fornisce accesso alle metriche relative a Dataflow. Crea dashboard per tracciare l'ora serie di metriche e creare criteri di avviso che ti avvisano quando e metriche raggiungono valori specifici.
Creare gruppi di risorse
Crea gruppi di risorse per semplificare l'impostazione degli avvisi e la creazione di dashboard che includono più pipeline Apache Beam.
Nella console Google Cloud, seleziona Monitoring:
Nel riquadro di navigazione, seleziona Gruppi.
Fai clic su Crea gruppo.
Inserisci un nome per il gruppo.
Aggiungi criteri di filtro che definiscono le risorse Dataflow incluse nel gruppo. Ad esempio, uno dei criteri di filtro può essere il prefisso del nome delle pipeline.
Dopo aver creato il gruppo, puoi visualizzare le metriche di base relative alle risorse del gruppo.
Creare criteri di avviso per le metriche di Dataflow
Monitoring consente di creare avvisi e ricevere notifiche quando la metrica supera una soglia specificata. Ad esempio, puoi ricevere una notifica quando il sistema di una pipeline in modalità flusso aumenta al di sopra di un valore predefinito.
Nella console Google Cloud, seleziona Monitoring:
Nel riquadro di navigazione, seleziona Avvisi.
Fai clic su Crea criterio.
Nella pagina Crea nuovo criterio di avviso, definisci la configurazione condizioni e canali di notifica.
Ad esempio, per impostare un avviso sul ritardo di sistema perWindowedWordCount
Gruppo di pipeline Apache Beam, completa i seguenti passaggi:- Fai clic su Seleziona una metrica.
- Nel campo Seleziona una metrica, inserisci
Dataflow Job
. - Per Categorie di metriche, seleziona Job.
- Per Metriche, seleziona Ritardo sistema.
Ogni volta che viene attivato un avviso, si verifica un incidente vengono creati. Se nell'avviso hai specificato un meccanismo di notifica, ad esempio email o SMS, riceverai anche una notifica.
Crea dashboard di monitoraggio personalizzate
Puoi creare dashboard di monitoraggio con i grafici correlati a Dataflow più pertinenti. Per aggiungere un grafico a una dashboard:
Nella console Google Cloud, seleziona Monitoring:
Nel riquadro di navigazione, seleziona Dashboard.
Fai clic su Crea dashboard.
Fai clic su Aggiungi widget.
Nella finestra Aggiungi widget, per Dati, seleziona Metrica.
Nel riquadro Seleziona una metrica, per Metrica, inserisci
Dataflow Job
.Seleziona una categoria di metrica e una metrica.
Puoi aggiungere alla dashboard tutti i grafici che vuoi.
Ricevi metriche delle VM worker dall'agente Monitoring
Puoi usare Monitoring per monitorare disco permanente, CPU di rete e di processo. Quando esegui la pipeline, dalle tue istanze VM worker Dataflow, Agente di monitoraggio. Consulta l'elenco di metriche dell'agente Monitoring disponibili.
Per abilitare l'agente Monitoring, utilizza --experiments=enable_stackdriver_agent_metrics
durante l'esecuzione della pipeline. L'account di servizio di lavoro deve avere il ruolo roles/monitoring.metricWriter
.
Per disabilitare l'agente Monitoring senza arrestare la pipeline,
aggiorna la pipeline
avvio di un job di sostituzione
senza il parametro --experiments=enable_stackdriver_agent_metrics
.
Archiviazione e conservazione
Informazioni sui job Dataflow completati o annullati vengono conservati per 30 giorni.
I log operativi vengono archiviati nel
_Default
bucket di log.
Il nome del servizio API di logging è dataflow.googleapis.com
. Per ulteriori informazioni
i tipi di risorse e i servizi monitorati da Google Cloud utilizzati in Cloud Logging,
consulta Risorse e servizi monitorati.
Per maggiori dettagli su per quanto tempo le voci di log vengono conservate da Logging: vedere le informazioni sulla conservazione Quote e limiti: periodi di conservazione dei log.
Per informazioni sulla visualizzazione dei log operativi, consulta Monitorare e visualizzare i log della pipeline.
Passaggi successivi
Per saperne di più, ti consigliamo di consultare queste altre risorse: