Questo documento descrive le fonti di informazioni diagnostiche che puoi utilizzare per identificare i problemi durante l'installazione o l'esecuzione di Ops Agent.
Controlli di integrità dell'agente
La versione 2.25.1 ha introdotto i controlli di integrità all'ora di inizio per Ops Agent. All'avvio, Ops Agent esegue una serie di controlli alla ricerca di condizioni che impediscono l'esecuzione corretta dell'agente. Se l'agente rileva una delle condizioni, registra un messaggio che descrive il problema. Ops Agent verifica quanto segue:
- Problemi di connettività
- Disponibilità di porte utilizzate dall'agente per generare report sulle metriche relative a se stesso
- Problemi di autorizzazione
- Disponibilità delle API utilizzate dall'agente per scrivere log o metriche
- Un problema della routine di controllo di integrità stessa.
La versione 2.37.0 ha introdotto i controlli Heath di runtime per Ops Agent. Questi errori vengono segnalati a Cloud Logging ed Error Reporting. Per informazioni sull'individuazione degli errori di runtime, consulta Ricerca degli errori di runtime.
La versione 2.46.0 ha introdotto il codice
informativo LogPingOpsAgent
. Questo codice non rappresenta un errore.
Per maggiori informazioni, vedi
Verificare la riuscita raccolta di log.
La tabella seguente elenca ogni codice del controllo di integrità in ordine alfabetico e
descrive il significato di ogni codice. I codici che terminano con la stringa Err
indicano errori, mentre gli altri codici sono informativi.
Codice per il controllo di integrità | Categoria | Significato | Suggerimento |
---|---|---|---|
DLApiConnErr
|
Connettività |
Richiesta al sottodominio dei download, dl.google.com , non riuscita.
|
Controlla la connessione a internet e le regole del firewall. Per maggiori informazioni, consulta Problemi di connettività di rete. |
FbMetricsPortErr
|
Disponibilità porte | La porta 20202, necessaria per le metriche personali di Ops Agent, non è disponibile. | Verifica che la porta 20202 sia aperta. Per maggiori informazioni, consulta La porta richiesta non è disponibile. |
HcFailureErr
|
Generico | Si è verificato un errore interno della routine di controllo di integrità di Ops Agent. | Invia una richiesta di assistenza dalla console Google Cloud. Per maggiori informazioni, consulta Assistenza. |
LogApiConnErr
|
Connettività | Richiesta all'API Logging non riuscita. | Controlla la connessione a internet e le regole del firewall. Per maggiori informazioni, consulta Problemi di connettività di rete. |
LogApiDisabledErr
|
API | L'API Logging è disabilitata nell'attuale progetto Google Cloud. | Abilita l'API Logging. |
LogApiPermissionErr
|
Autorizzazione |
Nell'account di servizio manca il ruolo Writer log
(roles/logging.logWriter ).
|
Concedi il ruolo Writer log all'account di servizio. Per maggiori informazioni, vedi L'agente non dispone delle autorizzazioni API. |
LogApiScopeErr
|
Autorizzazione | Nella VM manca l'ambito di accesso https://www.googleapis.com/auth/logging.write. | Aggiungi l'ambito https://www.googleapis.com/auth/logging.write alla VM. Per maggiori informazioni, consulta Verificare gli ambiti di accesso. |
LogApiUnauthenticatedErr
|
API | La VM attuale non ha potuto eseguire l'autenticazione nell'API Logging. | Verifica che i file delle credenziali, gli ambiti di accesso alle VM e le autorizzazioni siano configurati correttamente. Per maggiori informazioni, consulta Autorizzare Ops Agent. |
LogPingOpsAgent
|
Un messaggio payload informativo scritto ogni 10 minuti nel log ops-agent-health . Puoi utilizzare le voci di log risultanti per verificare che l'agente stia inviando i log. Questo messaggio non è
un errore.
|
Questo messaggio dovrebbe essere visualizzato ogni 10 minuti. Se il messaggio non viene visualizzato per almeno 20 minuti, è possibile che l'agente abbia riscontrato un problema. Per informazioni sulla risoluzione dei problemi, consulta Risolvere i problemi di Ops Agent. | |
LogParseErr
|
Runtime | Ops Agent non è riuscito ad analizzare uno o più log. | Controlla la configurazione di eventuali processori di logging che hai creato. Per ulteriori informazioni, consulta Errori di analisi dei log. |
LogPipeLineErr
|
Runtime | La pipeline di logging di Ops Agent non è riuscita. | Verifica che l'agente abbia accesso ai file di buffer; verifica che il disco sia pieno e che la configurazione di Ops Agent sia corretta. Per maggiori informazioni, consulta Errori della pipeline. |
MetaApiConnErr
|
Connettività | Richiesta al server G C E Metadata di eseguire query sugli ambiti di accesso alle VM, sui token OAuth e sulle etichette delle risorse non è riuscita. | Controlla la connessione a internet e le regole del firewall. Per maggiori informazioni, consulta Problemi di connettività di rete. |
MonApiConnErr
|
Connettività | Richiesta all'API Monitoring non riuscita. | Controlla la connessione a internet e le regole del firewall. Per maggiori informazioni, consulta Problemi di connettività di rete. |
MonApiDisabledErr
|
API | L'API Monitoring è disabilitata nell'attuale progetto Google Cloud. | Abilita l'API Monitoring. |
MonApiPermissionErr
|
Autorizzazione |
Nell'account di servizio manca il ruolo Writer metriche Monitoring
(roles/monitoring.metricWriter ).
|
Concedi il ruolo Writer metriche Monitoring all'account di servizio. Per maggiori informazioni, vedi L'agente non dispone delle autorizzazioni API. |
MonApiScopeErr
|
Autorizzazione | Nella VM manca l'ambito di accesso https://www.googleapis.com/auth/monitoring.write. | Aggiungi l'ambito https://www.googleapis.com/auth/monitoring.write alla VM. Per maggiori informazioni, consulta Verificare gli ambiti di accesso. |
MonApiUnauthenticatedErr
|
API | La VM attuale non è riuscita ad autenticarsi con l'API Monitoring. | Verifica che i file delle credenziali, gli ambiti di accesso alle VM e le autorizzazioni siano configurati correttamente. Per maggiori informazioni, consulta Autorizzare Ops Agent. |
OtelMetricsPortErr
|
Disponibilità porte | La porta 20201, necessaria per le metriche automatiche di Ops Agent, non è disponibile. | Verifica che la porta 20201 sia aperta. Per maggiori informazioni, consulta Una porta obbligatoria non è disponibile. |
PacApiConnErr
|
Connettività | Questo codice per il controllo di integrità non è affidabile. Questo codice è disabilitato in Ops Agent versione 2.46.1. | Esegui l'aggiornamento alla versione Ops Agent 2.46.1 o successiva. |
Individuare gli errori relativi all'ora di inizio
A partire dalla versione 2.35.0, le informazioni sul controllo di integrità vengono scritte nel log ops-agent-health
dall'API Cloud Logging (le versioni 2.33.0 e 2.34.0 utilizzano ops-agent-health-checks
). Le stesse informazioni vengono scritte anche in un file health-checks.log
, come segue:
- Linux:
/var/log/google-cloud-ops-agent/health-checks.log
- Windows:
C:\ProgramData\Google\Cloud Operations\Ops Agent\log\health-checks.log
Puoi anche visualizzare qualsiasi messaggio di controllo di integrità eseguendo una query sullo stato del servizio Ops Agent come segue:
- Su Linux, esegui questo comando:
sudo systemctl status google-cloud-ops-agent"*"
Cerca messaggi come "[Ports Check] Risultato: PASS". Altri risultati sono "ERROR" e "FAIL".
- Su Windows, utilizza il Visualizzatore eventi di Windows. Cerca i messaggi di tipo "Informazioni", "Errore" o "Errore" associati al servizio
google-cloud-ops-agent
.
Dopo aver risolto gli eventuali problemi, devi riavviare l'agente. I controlli di integrità vengono eseguiti all'avvio dell'agente, quindi per eseguirli nuovamente, devi riavviare l'agente.
Individuare gli errori di runtime
I controlli di integrità del runtime vengono segnalati sia in Cloud Logging sia in Error Reporting. Se l'agente non si è avviato, ma è riuscito a segnalare errori prima di non riuscire, potresti vedere anche errori all'ora di inizio segnalati.
Per visualizzare gli errori di runtime da Ops Agent in Logging, segui questi passaggi:
-
Nella console Google Cloud, vai alla pagina Esplora log:
Se usi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
- Inserisci la seguente query e fai clic su Esegui query:
log_id("ops-agent-health")
Per visualizzare gli errori di runtime di Ops Agent in Error Reporting, segui questi passaggi:
-
Nella console Google Cloud, vai alla pagina Error Reporting:
Puoi trovare questa pagina anche utilizzando la barra di ricerca.
- Per visualizzare gli errori di Ops Agent, filtra gli errori per
Ops Agent
.
Verifica la corretta raccolta dei log
La versione 2.46.0 di Ops Agent ha introdotto il controllo di integrità informativo di LogPingOpsAgent
. Questo controllo scrive un
messaggio informativo nel campo ops-agent-health
ogni 10 minuti.
Puoi utilizzare la presenza di questi messaggi per verificare che Ops Agent stia scrivendo i log in uno dei seguenti modi:
- Cerca i messaggi di ping nei log di una VM specifica utilizzando Esplora log.
- Controlla il valore della metrica
log_entry_count
per una VM specifica utilizzando Esplora metriche. - Crea un criterio di avviso per ricevere una notifica se una VM specifica non aggiorna la metrica
log_entry_count
.
Se una di queste opzioni indica che i messaggi di log non vengono importati, puoi:
- Verifica la presenza di codici di errore che indicano errori di avvio o errori di runtime.
- Determina se Ops Agent è attivo e in esecuzione.
- Esegui lo script di diagnostica dell'agente.
Per controllare lo stato di Ops Agent su una VM specifica, hai bisogno dell'ID istanza della VM. Per trovare l'ID istanza:
-
Nella console Google Cloud, vai alla pagina Istanze VM:
Se usi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
- Fai clic sul nome di un'istanza VM.
- Nella scheda Dettagli, individua la sezione Informazioni di base. L'ID istanza viene visualizzato come stringa numerica. Utilizza questa stringa per il valore INSTANCE_ID nelle sezioni successive.
Strumento di diagnostica degli agenti per le VM
Lo strumento di diagnostica dell'agente raccoglie informazioni di debug locali critiche dalle tue VM per tutti i seguenti agenti: Ops Agent, agente Logging legacy e agente Monitoring legacy. Le informazioni di debug includono, ad esempio, informazioni sul progetto, informazioni sulla VM, configurazione dell'agente, log dell'agente, stato del servizio dell'agente e informazioni che in genere richiedono una raccolta manuale. Lo strumento controlla anche l'ambiente VM locale per verificare che soddisfi determinati requisiti per il corretto funzionamento degli agenti, ad esempio la connettività di rete e le autorizzazioni richieste.
Quando invii una richiesta di assistenza a un cliente per un agente su una VM, esegui lo strumento di diagnostica dell'agente e allega alla richiesta le informazioni raccolte. Queste informazioni consentono di ridurre il tempo necessario per la risoluzione dei problemi relativi alla tua richiesta di assistenza. Prima di allegare le informazioni alla richiesta di assistenza, oscura tutte le informazioni sensibili come le password.
Lo strumento di diagnostica dell'agente deve essere eseguito dall'interno della VM, quindi in genere è necessario prima accedere alla VM tramite SSH. Il seguente comando recupera lo strumento di diagnostica dell'agente e lo esegue:
Linux
curl -sSO https://dl.google.com/cloudagents/diagnose-agents.sh
sudo bash diagnose-agents.sh
Windows
(New-Object Net.WebClient).DownloadFile("https://dl.google.com/cloudagents/diagnose-agents.ps1", "${env:UserProfile}\diagnose-agents.ps1")
Invoke-Expression "${env:UserProfile}\diagnose-agents.ps1"
Segui l'output dell'esecuzione dello script per individuare i file che includono le informazioni raccolte. In genere puoi trovarli nella directory /var/tmp/google-agents
su Linux e nella directory $env:LOCALAPPDATA/Temp
su Windows, a meno che tu non abbia personalizzato la directory di output durante l'esecuzione dello script.
Per informazioni dettagliate, esamina lo script diagnose-agents.sh
su Linux o
lo script diagnose-agents.ps1
su Windows.
Strumento di diagnostica dell'agente per i criteri di installazione automatica
Se il tentativo di installare Ops Agent tramite un criterio del sistema operativo Ops Agent non va a buon fine, puoi utilizzare lo script di diagnostica descritto in questa sezione per il debug. Ad esempio, potresti notare uno dei seguenti casi:
- L'installazione di Ops Agent non riesce quando hai utilizzato la casella di controllo Installa Ops Agent per il monitoraggio e il logging per installare Ops Agent durante la creazione della VM.
Lo stato dell'agente nella dashboard delle istanze VM di Cloud Monitoring o nella scheda Osservabilità in una pagina dei dettagli della VM di Compute Engine rimane nello stato In attesa per più di 10 minuti. Lo stato In attesa prolungato potrebbe indicare uno dei seguenti motivi:
- Problema nell'applicazione del criterio.
- Un problema con l'installazione effettiva di Ops Agent.
- Un problema di connettività tra la VM e Cloud Monitoring.
Per alcuni di questi problemi, potrebbero essere utili anche lo script generico di diagnostica dell'agente e i controlli di integrità.
Per eseguire lo script di diagnostica dei criteri, esegui questi comandi:
curl -sSO https://dl.google.com/cloudagents/diagnose-ui-policies.sh bash diagnose-ui-policies.sh VM_NAME VM_ZONE
Questo script mostra informazioni sulle VM interessate e sui relativi criteri di installazione automatica.
Quando invii una richiesta di assistenza a un cliente per un agente su una VM, esegui gli strumenti di diagnostica dell'agente e allega alla richiesta le informazioni raccolte. Queste informazioni consentono di ridurre il tempo necessario per la risoluzione dei problemi relativi alla tua richiesta di assistenza. Prima di allegare le informazioni alla richiesta di assistenza, oscura tutte le informazioni sensibili come le password.
Stato agente
Puoi controllare lo stato dei processi di Ops Agent sulla VM per determinare se l'agente è in esecuzione o meno.
Linux
Per verificare lo stato di Ops Agent, utilizza il seguente comando:sudo systemctl status google-cloud-ops-agent"*"
Verifica che i componenti "Metrics Agent" e "Logging Agent" siano elencati come "attivo (in esecuzione)", come mostrato nel seguente output di esempio (alcune righe sono state rimosse per brevità):
● google-cloud-ops-agent.service - Google Cloud Ops Agent Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent.service; enabled; vendor preset: enabled) Active: active (exited) since Wed 2023-05-03 21:22:28 UTC; 4 weeks 0 days ago Process: 3353828 ExecStartPre=/opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_engine -in /etc/go> Process: 3353837 ExecStart=/bin/true (code=exited, status=0/SUCCESS) Main PID: 3353837 (code=exited, status=0/SUCCESS) CPU: 195ms [...] ● google-cloud-ops-agent-opentelemetry-collector.service - Google Cloud Ops Agent - Metrics Agent Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent-opentelemetry-collector.service; static) Active: active (running) since Wed 2023-05-03 21:22:29 UTC; 4 weeks 0 days ago Process: 3353840 ExecStartPre=/opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_engine -service=ot> Main PID: 3353855 (otelopscol) Tasks: 9 (limit: 2355) Memory: 65.3M CPU: 40min 31.555s CGroup: /system.slice/google-cloud-ops-agent-opentelemetry-collector.service └─3353855 /opt/google-cloud-ops-agent/subagents/opentelemetry-collector/otelopscol --config=/run/g> [...] ● google-cloud-ops-agent-fluent-bit.service - Google Cloud Ops Agent - Logging Agent Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent-fluent-bit.service; static) Active: active (running) since Wed 2023-05-03 21:22:29 UTC; 4 weeks 0 days ago Process: 3353838 ExecStartPre=/opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_engine -service=fl> Main PID: 3353856 (google_cloud_op) Tasks: 31 (limit: 2355) Memory: 58.3M CPU: 29min 6.771s CGroup: /system.slice/google-cloud-ops-agent-fluent-bit.service ├─3353856 /opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_wrapper -config_path /etc/goo> └─3353872 /opt/google-cloud-ops-agent/subagents/fluent-bit/bin/fluent-bit --config /run/google-clo> [...] ● google-cloud-ops-agent-diagnostics.service - Google Cloud Ops Agent - Diagnostics Loaded: loaded (/lib/systemd/system/google-cloud-ops-agent-diagnostics.service; disabled; vendor preset: e> Active: active (running) since Wed 2023-05-03 21:22:26 UTC; 4 weeks 0 days ago Main PID: 3353819 (google_cloud_op) Tasks: 8 (limit: 2355) Memory: 36.0M CPU: 3min 19.488s CGroup: /system.slice/google-cloud-ops-agent-diagnostics.service └─3353819 /opt/google-cloud-ops-agent/libexec/google_cloud_ops_agent_diagnostics -config /etc/goog> [...]
Windows
Per verificare lo stato di Ops Agent, utilizza il seguente comando:Get-Service google-cloud-ops-agent*
Verifica che i componenti "Metrics Agent" e "Logging Agent" siano elencati come "In esecuzione", come mostrato nell'output di esempio seguente:
Status Name DisplayName ------ ---- ----------- Running google-cloud-op... Google Cloud Ops Agent Running google-cloud-op... Google Cloud Ops Agent - Logging Agent Running google-cloud-op... Google Cloud Ops Agent - Metrics Agent Running google-cloud-op... Google Cloud Ops Agent - Diagnostics
Autolog degli agenti
Se l'agente non riesce a importare i log in Cloud Logging, potresti dover ispezionare i log dell'agente localmente sulla VM per risolvere i problemi. Puoi anche utilizzare la rotazione dei log per gestire i self log dell'agente.
Linux
Per esaminare gli autolog scritti in Journald
, esegui questo comando:
journalctl -u google-cloud-ops-agent*
Per esaminare i self log scritti sul disco dal modulo di logging, esegui questo comando:
vim -M /var/log/google-cloud-ops-agent/subagents/logging-module.log
Windows
Per ispezionare i self log scritti in Windows Event Logs
, esegui questo comando:
Get-WinEvent -FilterHashtable @{ Logname='Application'; ProviderName='google-cloud-ops-agent*' } | Format-Table -AutoSize -Wrap
Per esaminare i self log scritti sul disco dal modulo di logging, esegui questo comando:
notepad "C:\ProgramData\Google\Cloud Operations\Ops Agent\log\logging-module.log"
Per ispezionare i log di Windows Service Control Manager
per i servizi Ops Agent, esegui questo comando:
Get-WinEvent -FilterHashtable @{ Logname='System'; ProviderName='Service Control Manager' } | Where-Object -Property Message -Match 'Google Cloud Ops Agent' | Format-Table -AutoSize -Wrap
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 speso per le metriche addebitabili senza influire sull'osservabilità. La pagina Gestione delle metriche riporta le seguenti informazioni:
- Volumi di importazione per la fatturazione basata sia su byte che su campioni, nei domini delle metriche e per singole metriche.
- Dati su etichette e cardinalità delle metriche.
- Utilizzo di metriche nei criteri di avviso e nelle dashboard personalizzate.
- Percentuale di errori di scrittura delle metriche.
Per visualizzare la pagina Gestione delle metriche, segui questi passaggi:
-
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, la pagina Gestione delle metriche mostra informazioni sulle metriche raccolte il giorno precedente.
Per saperne di più sulla pagina Gestione delle metriche, consulta Visualizzare e gestire l'utilizzo delle metriche.