Per impostazione predefinita, Ops Agent e l'agente Monitoring precedente sono configurati per raccogliere le metriche che acquisiscono informazioni sui processi in esecuzione sulle tue macchine virtuali (VM) Compute Engine. Puoi anche raccogliere queste metriche
sulle VM Amazon Elastic Compute Cloud (EC2) utilizzando l'agente Monitoring.
Questo insieme di metriche, chiamate metriche di processo, è identificabile
il prefisso agent.googleapis.com/processes
. Queste metriche
non vengono raccolti su Google Kubernetes Engine (GKE).
A partire dal 6 agosto 2 2021, verranno introdotti gli addebiti per queste metriche, come descritto in Metriche addebitabili. L'insieme di metriche di processo è classificato come addebitabile, ma gli addebiti hanno non sono mai stati implementati.
Questo documento descrive gli strumenti per visualizzare le metriche di processo, come determinare la quantità di dati che si importano da queste metriche e come ridurre al minimo i relativi addebiti.
Utilizzare le metriche di processo
Puoi visualizzare i dati delle metriche relative ai processi con i grafici creati utilizzando Metrics Explorer o dashboard personalizzate. Per ulteriori informazioni, consulta Utilizzare dashboard e grafici. Inoltre, Cloud Monitoring include i dati delle metriche di processo in due dashboard predefinite:
- Dashboard Istanze VM in Monitoraggio
- Dashboard dei dettagli delle istanze VM in Compute Engine
Le sezioni seguenti descrivono queste dashboard.
Monitoraggio: visualizza metriche di processo aggregate
Per visualizzare le metriche di processo aggregate all'interno di un ambito delle metriche, vai a Nella scheda Processi nella dashboard Istanze VM:
-
Nella console Google Cloud, vai alla pagina Dashboard:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
Seleziona la dashboard Istanze VM dall'elenco.
Fai clic su Processi.
Lo screenshot seguente mostra un esempio della pagina Processi di monitoraggio:
Puoi utilizzare i grafici nella scheda Processi per identificare i i processi nell'ambito delle metriche che consumano di CPU e memoria e che presentano l'utilizzo più elevato del disco.
Compute Engine: visualizza le metriche sul rendimento delle VM che consumano più risorse
Per visualizzare i grafici delle prestazioni che mostrano le cinque VM che utilizzano più di un risorsa del tuo progetto Google Cloud, vai alla scheda Observabilità le tue istanze VM:
-
Nella console Google Cloud, vai alla pagina Istanze VM:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
- Fai clic su Osservabilità.
Lo screenshot seguente mostra un esempio di Compute Engine Pagina Osservabilità.
Per informazioni sull'utilizzo di queste metriche per diagnosticare i problemi relativi alle VM, consulta la sezione Risoluzione dei problemi di prestazioni delle VM.
Compute Engine: visualizza metriche di processo per VM
Per visualizzare un elenco dei processi in esecuzione su un singolo Compute Engine: macchina virtuale (VM) e grafici per i processi con la risorsa più elevata , vai alla scheda Osservabilità per la VM:
-
Nella console Google Cloud, vai alla pagina Istanze VM:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
Nella scheda Istanze, fai clic sul nome di una VM da ispezionare.
Fai clic su Osservabilità per visualizzare le metriche per questa VM.
Nel riquadro di navigazione della scheda Osservabilità, seleziona Processi.
Lo screenshot seguente mostra un esempio della pagina Processi di Compute Engine:
Le metriche di processo vengono conservate per un massimo di 24 ore, in modo da poterli utilizzare per cercare indietro nel tempo e attribuire le anomalie nel consumo di risorse a specifiche o di identificare i consumer delle risorse più costosi. Ad esempio, il seguente grafico mostra i processi che consumano le maggiori percentuali di risorse della CPU. Puoi utilizzare il selettore dell'intervallo di tempo modificare l'intervallo di tempo del grafico. Il selettore dell'intervallo di tempo offre valori preimpostati, come l'ora più recente, e ti consente anche di inserire un intervallo di tempo personalizzato.
La tabella Processi in esecuzione fornisce un elenco del consumo di risorse simile all'output del comando top
di Linux.
Per impostazione predefinita, la tabella mostra uno snapshot dei dati più recenti.
Tuttavia, se selezioni un intervallo di tempo su un grafico che termina nel passato,
la tabella mostra i processi in esecuzione alla fine di quell'intervallo.
Per informazioni sull'utilizzo di queste metriche per diagnosticare problemi relativi a VM, consulta Risoluzione dei problemi di prestazioni delle VM.
Metriche di processo raccolte dall'agente
Gli agenti Linux raccolgono tutte le metriche elencate nella tabella seguente dai processi in esecuzione sulle VM Compute Engine e, utilizzando l'agente di monitoraggio, dalle VM Amazon Elastic Compute Cloud (EC2). Puoi disattivarne la raccolta tramite Ops Agent (versioni 2.0.0 e successive) e l'agente Monitoring legacy.
Puoi anche disattivare la raccolta di metriche di processo per Ops Agent (versioni 2.0.0 e successive) in esecuzione su VM Windows.
Per ulteriori informazioni, consulta la sezione Disattivare le metriche di processo.
Se vuoi disattivare la raccolta di queste metriche su Windows, ti consigliamo di eseguire l'upgrade alla versione 2.0.0 o successiva di Ops Agent. Per ulteriori informazioni, consulta la sezione Installazione di Ops Agent.
Tabella delle metriche di processo
Il "tipo di metrica" le stringhe in questa tabella devono essere precedute dal prefisso
con agent.googleapis.com/processes/
. Questo prefisso è stato
omesso dalle voci della tabella.
Quando esegui una query su un'etichetta, utilizza il prefisso metric.labels.
; della
ad esempio metric.labels.LABEL="VALUE"
.
Tipo di metrica Fase di lancio (livelli della gerarchia delle risorse) Nome visualizzato |
|
---|---|
Tipo, Tipo, Unità Risorse monitorate |
Descrizione Etichette |
count_by_state
GA
(progetto)
Processi |
|
GAUGE , DOUBLE , 1
aws_ec2_instance baremetalsolution.googleapis.com/Instance gce_instance |
Conteggio dei processi in uno stato specificato. Solo per Linux. Campionamento eseguito ogni 60 secondi.
state :
Corri, dormi, zombie ecc.
|
cpu_time
GA
(progetto)
Processo di CPU |
|
CUMULATIVE , INT64 , us{CPU}
aws_ec2_instance baremetalsolution.googleapis.com/Instance gce_instance |
Tempo CPU del processo specificato. Campionamento eseguito ogni 60 secondi.
process :
Nome del processo.
user_or_syst :
Indica se si tratta di un processo utente o di sistema.
command :
Elabora il comando.
command_line :
Esegui la riga di comando, massimo 1024 caratteri.
owner :
Proprietario del processo.
pid :
ID processo.
|
disk/read_bytes_count
GA
(project)
Elabora I/O di lettura del disco |
|
CUMULATIVE , INT64 , By
aws_ec2_instance baremetalsolution.googleapis.com/Instance gce_instance |
Elabora l'I/O di lettura del disco. Solo per Linux. Campionamento eseguito ogni 60 secondi.
process :
Nome del processo.
command :
Elabora il comando.
command_line :
Riga di comando del processo, massimo 1024 caratteri.
owner :
Proprietario del processo.
pid :
ID processo.
|
disk/write_bytes_count
GA
(progetto)
Elabora I/O di scrittura su disco |
|
CUMULATIVE , INT64 , By
aws_ec2_instance baremetalsolution.googleapis.com/Instance gce_instance |
Elabora I/O di scrittura su disco. Solo per Linux. Campionamento eseguito ogni 60 secondi.
process :
Nome del processo.
command :
Elaborazione del comando.
command_line :
Riga di comando del processo, massimo 1024 caratteri.
owner :
Proprietario del processo.
pid :
ID processo.
|
fork_count
GA
(project)
Numero di forchette |
|
CUMULATIVE , INT64 , 1
aws_ec2_instance baremetalsolution.googleapis.com/Instance gce_instance |
Numero totale di processi creati con fork. Solo per Linux. Campionamento eseguito ogni 60 secondi. |
rss_usage
GA
(progetto)
Elabora memoria residente |
|
GAUGE , DOUBLE , By
aws_ec2_instance baremetalsolution.googleapis.com/Instance gce_instance |
Utilizzo della memoria residente del processo specificato. Solo per Linux. Campionamento eseguito ogni 60 secondi.
process :
Nome del processo.
command :
Elabora il comando.
command_line :
Esegui la riga di comando, massimo 1024 caratteri.
owner :
Proprietario del processo.
pid :
ID processo.
|
vm_usage
GA
(project)
Memoria virtuale del processo |
|
GAUGE , DOUBLE , By
aws_ec2_instance baremetalsolution.googleapis.com/Instance gce_instance |
Utilizzo della VM del processo specificato. Campionamento eseguito ogni 60 secondi.
process :
Nome del processo.
command :
Elabora il comando.
command_line :
Riga di comando del processo, massimo 1024 caratteri.
owner :
Proprietario del processo.
pid :
ID processo.
|
Tabella generata il 12/09/2024 alle ore 02:25:45 UTC.
Determinazione dell'importazione corrente
Puoi utilizzare Metrics Explorer per vedere quanti dati stai attualmente l'importazione per le metriche di processo. Segui questa procedura:
-
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 code MQL o code PromQL.
Verifica che sia selezionato MQL nel pulsante di attivazione/disattivazione Lingua. Il pulsante di attivazione/disattivazione della lingua si trova nella stessa barra degli strumenti. consente di formattare la query.
Per vedere il numero totale di punti della metrica di processo per le risorse
gce_instance
eaws_ec2_instance
, segui questi passaggi:Inserisci la seguente query:
def tagged_process_metric name = metric 'agent.googleapis.com/processes/'$name | add [metric_suffix: $name]; def process_metrics resource_type = fetch $resource_type | { @tagged_process_metric 'cpu_time' ; @tagged_process_metric 'disk/read_bytes_count' ; @tagged_process_metric 'disk/write_bytes_count' ; @tagged_process_metric 'rss_usage' ; @tagged_process_metric 'vm_usage' ; @tagged_process_metric 'count_by_state' ; @tagged_process_metric 'fork_count' } | within 1d | group_by [metric_suffix], 1m, [row_count: row_count()] | union; { @process_metrics 'gce_instance' ; @process_metrics 'aws_ec2_instance' } | outer_join 0, 0 | { rename [], [out: val(0)] | add [resource_type: 'gce_instance'] ; rename [], [out: val(1)] | add [resource_type: 'aws_ec2_instance'] } | union | group_by drop[metric_suffix], 1d, .sum
Fai clic su Esegui query. Il grafico risultante mostra i valori per ciascun tipo di risorsa.
Stima del costo delle metriche
Gli esempi di prezzi di Monitoring illustrano come stimare il costo dell'importazione delle metriche. Questi esempi possono essere applicati alle metriche di processo.
Tutte le metriche dei processi vengono campionate ogni 60 secondi e tutte scrivono punti dati conteggiati come otto byte ai fini della determinazione del prezzo.
Il prezzo per le metriche di processo è impostato su 5% del volume standard utilizzato negli esempi di prezzi. Pertanto, se si assume che tutte le metriche negli scenari descritti in questi esempi siano metriche di processo, puoi utilizzare il 5% del costo totale per ogni scenario come stima del costo delle metriche di processo.
Disattivare la raccolta delle metriche dei processi
Esistono diversi modi per disattivare la raccolta di queste metriche da parte di Ops Agent (versioni 2.0.0 e successive) e da parte dell'agente Monitoring legacy su Linux.
Gli agenti vengono eseguiti solo su VM di Compute Engine e, per l'agente Monitoring, VM Amazon Elastic Compute Cloud (EC2); queste procedure si applicano solo su queste piattaforme.
Non puoi disattivare la raccolta da parte di Ops Agent se utilizzi versioni meno recenti di 2.0.0 o l'agente Monitoring legacy su Windows. Se vuoi disattivare la raccolta di queste metriche su Windows, ti consigliamo di eseguire l'upgrade alla versione 2.0.0 o successiva di Ops Agent. Per ulteriori informazioni, vedi Installazione di Ops Agent.
La procedura generale è la seguente:
Connettiti alla VM.
Crea una copia del file di configurazione esistente come backup. Negozio la copia di backup esterna alla directory di configurazione dell'agente, quindi non tenta di caricare entrambi i file. Ad esempio, il seguente comando crea una copia del file di configurazione per l'agente di monitoraggio su Linux:
cp /etc/stackdriver/collectd.conf BACKUP_DIR/collectd.conf.bak
Modifica la configurazione utilizzando una delle opzioni descritte di seguito:
Riavvia l'agente per acquisire la nuova configurazione:
- Agente di monitoraggio:
sudo service stackdriver-agent restart
- Agente operativo:
sudo service google-cloud-ops-agent restart
- Agente di monitoraggio:
Verifica che le metriche di processo non vengano più raccolte per questa VM:
Seleziona Esplora metriche.
Fai clic su MQL.
Per una risorsa
gce_instance
, inserisci la seguente query, sostituendoVM_NAME con il nome della VM:fetch gce_instance | metric 'agent.googleapis.com/processes/cpu_time' | filter (metadata.system_labels.name == 'VM_NAME') | align rate(1m) | every 1m
Per una risorsa
aws_ec2_instance
, sostituiscigce_instance
nel query.Fai clic su Esegui query.
Agente operativo su Linux o Windows
La posizione del file di configurazione per l'agente operativo dipende dal sistema operativo:
- Per Linux:
/etc/google-cloud-ops-agent/config.yaml
- Per Windows:
C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml
Per disattivare la raccolta di tutte le metriche dei processi da parte di Ops Agent,
aggiungi quanto segue al file config.yaml
:
metrics: processors: metrics_filter: type: exclude_metrics metrics_pattern: - agent.googleapis.com/processes/*
Ciò esclude la raccolta delle metriche dei processi nel metrics_filter
processore che si applica alla pipeline predefinita nel servizio metrics
.
Per ulteriori informazioni sulle opzioni di configurazione di Ops Agent, consulta Configurare Ops Agent.
Agente di monitoraggio su Linux
Per disattivare la raccolta delle metriche dei processi con l'agente di monitoraggio legacy, hai a disposizione le seguenti opzioni:
Le sezioni seguenti descrivono ciascuna opzione e elencano i vantaggi e i rischi associati.
Modifica il file di configurazione dell'agente
Con questa opzione, modifichi direttamente il file di configurazione principale dell'agente, /etc/stackdriver/collectd.conf
, per rimuovere le sezioni che attivano la raccolta delle metriche di processo.
Procedura
Devi apportare tre gruppi di eliminazioni al
collectd.conf
file:
Elimina la seguente istruzione e configurazione del plug-in
LoadPlugin
:LoadPlugin processes <Plugin "processes"> ProcessMatch "all" ".*" Detail "ps_cputime" Detail "ps_disk_octets" Detail "ps_rss" Detail "ps_vm" </Plugin>
Elimina la seguente istruzione
PostCacheChain
e la relativa configurazione della catenaPostCache
:PostCacheChain "PostCache" <Chain "PostCache"> <Rule "processes"> <Match "regex"> Plugin "^processes$" Type "^(ps_cputime|disk_octets|ps_rss|ps_vm)$" </Match> <Target "jump"> Chain "MaybeThrottleProcesses" </Target> Target "stop" </Rule> <Rule "otherwise"> <Match "throttle_metadata_keys"> OKToThrottle false HighWaterMark 5700000000 # 950M * 6 LowWaterMark 4800000000 # 800M * 6 </Match> <Target "write"> Plugin "write_gcm" </Target> </Rule> </Chain>
Elimina la catena
MaybeThrottleProcesses
utilizzata dalla catenaPostCache
:<Chain "MaybeThrottleProcesses"> <Rule "default"> <Match "throttle_metadata_keys"> OKToThrottle true TrackedMetadata "processes:pid" TrackedMetadata "processes:command" TrackedMetadata "processes:command_line" TrackedMetadata "processes:owner" </Match> <Target "write"> Plugin "write_gcm" </Target> </Rule> </Chain>
Vantaggi e rischi
- Vantaggi
- Riduci le risorse utilizzate dall'agente perché le metriche sono mai raccolti.
- Se hai apportato altre modifiche al file
collectd.conf
, potresti riuscire a conservare facilmente le modifiche.
- Rischi
- Per modificare questo file di configurazione, devi utilizzare l'account
root
. - Rischio di introdurre errori tipografici nel file.
- Per modificare questo file di configurazione, devi utilizzare l'account
Sostituisci il file di configurazione dell'agente
Con questa opzione, sostituisci il file di configurazione principale dell'agente con una versione pre-modificata in cui le sezioni pertinenti sono state rimosse per te.
Procedura
Scarica il file premodificato,
collectd-no-process-metrics.conf
, dal repository GitHub alla directory/tmp
, quindi esegui la seguenti:cd /tmp && curl -sSO https://raw.githubusercontent.com/Stackdriver/agent-packaging/master/collectd-no-process-metrics.conf
Sostituisci il file
collectd.conf
esistente con il file precedentemente modificato:cp /tmp/collectd-no-process-metrics.conf /etc/stackdriver/collectd.conf
Vantaggi e rischi
- Vantaggi
- Riduci le risorse utilizzate dall'agente perché le metriche sono mai raccolti.
- Non devi modificare manualmente il file come
root
. - Gli strumenti di gestione della configurazione possono sostituire facilmente un file.
- Rischi
- Se hai apportato altre modifiche al file
collectd.conf
, devi unire queste modifiche nel file sostitutivo.
- Se hai apportato altre modifiche al file
Risoluzione dei problemi
Le procedure descritte in questo documento riguardano modifiche alla configurazione dell'agente, pertanto i problemi più probabili sono i seguenti:
- Privilegio insufficiente per modificare i file di configurazione. Configurazione
i file devono essere modificati dall'account
root
. - Introduzione di errori ortografici nel file di configurazione, se lo modifichi direttamente.
Per informazioni sulla risoluzione di altri problemi, consulta la sezione Risoluzione dei problemi relativi al Agente Monitoring.
Agente di monitoraggio su Windows
Non puoi disabilitare la raccolta di metriche di processo da parte dell'agente Monitoring legacy in esecuzione sulle VM Windows. Questo agente non è configurabile. Se vuoi disattivare la raccolta di queste metriche su Windows, ti consigliamo di eseguire l'upgrade alla versione 2.0.0 o successiva di Ops Agent. Per ulteriori informazioni, vedi Installazione di Ops Agent.
Se utilizzi Ops Agent, consulta Ops Agent su Linux o Windows.