Ce document décrit les sources d'informations de diagnostic que vous pouvez utiliser pour identifier les problèmes d'installation ou d'exécution de l'agent Ops.
Vérifications de l'état de l'agent
La version 2.25.1 a introduit des vérifications d'état d'heure de début pour l'agent Ops. Lorsque l'agent Ops démarre, il effectue une série de vérifications pour vérifier s'il existe des conditions empêchant l'agent de s'exécuter correctement. Si l'agent détecte l'une des conditions, il consigne un message décrivant le problème. L'Agent Ops recherche les éléments suivants :
- Problèmes de connectivité
- Disponibilité des ports utilisés par l'agent pour rapporter des métriques lui-même
- Problèmes liés aux autorisations
- Disponibilité des API utilisées par l'agent pour écrire des journaux ou des métriques
- Problème dans la routine de vérification de l'état elle-même.
La version 2.37.0 a introduit des vérifications d'état de l'exécution pour l'agent Ops. Ces erreurs sont signalées à Cloud Logging et Error Reporting. Pour localiser les erreurs d'exécution, consultez la page Rechercher les erreurs d'exécution.
La version 2.46.0 a introduit le code LogPingOpsAgent
informatif. Ce code ne représente pas une erreur.
Pour en savoir plus, consultez la section Vérifier la réussite de la collecte de journaux.
Le tableau suivant répertorie chaque code de vérification d'état par ordre alphabétique et décrit leur signification. Les codes qui se terminent par la chaîne Err
indiquent des erreurs. d'autres codes sont informatifs.
Code de vérification de l'état | Catégorie | Signification | Suggestion |
---|---|---|---|
DLApiConnErr
|
Connectivité |
Échec de la requête adressée au sous-domaine des téléchargements (dl.google.com ).
|
Vérifiez votre connexion Internet et vos règles de pare-feu. Pour en savoir plus, consultez Problèmes de connectivité réseau. |
FbMetricsPortErr
|
Disponibilité des ports | Le port 20202, nécessaire pour les métriques automatiques de l'agent Ops, n'est pas disponible. | Vérifiez que le port 20202 est ouvert. Pour en savoir plus, consultez la section Port requis non disponible. |
HcFailureErr
|
Générique | La routine de vérification de l'état de l'agent Ops a rencontré une erreur interne. | Envoyez une demande d'assistance à partir de Google Cloud Console. Pour en savoir plus, consultez la page Assistance. |
LogApiConnErr
|
Connectivité | Échec de la requête adressée à l'API Logging. | Vérifiez votre connexion Internet et vos règles de pare-feu. Pour en savoir plus, consultez Problèmes de connectivité réseau. |
LogApiDisabledErr
|
API | L'API Logging est désactivée dans le projet Google Cloud actuel. | Activer l'API Logging |
LogApiPermissionErr
|
Permission |
Le compte de service ne dispose pas du rôle "Rédacteur de journaux" (roles/logging.logWriter ).
|
Attribuez le rôle Rédacteur de journaux au compte de service. Pour en savoir plus, consultez la section Autorisations d'API manquantes pour l'agent. |
LogApiScopeErr
|
Permission | La VM ne dispose pas du niveau d'accès https://www.googleapis.com/auth/logging.write. | Ajoutez le champ d'application d'accès https://www.googleapis.com/auth/logging.write à la VM. Pour en savoir plus, consultez la page Vérifier vos niveaux d'accès. |
LogApiUnauthenticatedErr
|
API | La VM actuelle n'a pas pu s'authentifier auprès de l'API Logging. | Vérifiez que vos fichiers d'identifiants, vos niveaux d'accès aux VM et vos autorisations sont correctement configurés. Pour en savoir plus, consultez la page Autoriser l'agent Ops. |
LogPingOpsAgent
|
Un message de charge utile informatif écrit toutes les 10 minutes dans le journal ops-agent-health . Vous pouvez utiliser les entrées de journal obtenues pour vérifier que l'agent envoie les journaux. Ce message n'est pas une erreur.
|
Ce message devrait s'afficher toutes les 10 minutes. Si le message n'apparaît pas pendant 20 minutes ou plus, l'agent a peut-être rencontré un problème. Pour obtenir des informations de dépannage, consultez la page Résoudre les problèmes liés à l'agent Ops. | |
LogParseErr
|
Environnement d'exécution | L'agent Ops n'a pas pu analyser un ou plusieurs journaux. | Vérifiez la configuration des processeurs de journalisation que vous avez créés. Pour en savoir plus, consultez la page Erreurs d'analyse de journaux. |
LogPipeLineErr
|
Environnement d'exécution | Échec du pipeline de journalisation de l'agent Ops. | Vérifiez que l'agent a accès aux fichiers de la mémoire tampon, recherchez un disque complet et vérifiez que la configuration de l'agent Ops est correcte. Pour en savoir plus, consultez la page Erreurs de pipeline. |
MetaApiConnErr
|
Connectivité | Échec de la requête adressée au serveur de métadonnées G C E pour l'interrogation des niveaux d'accès aux VM, des jetons OAuth et des étiquettes de ressources. | Vérifiez votre connexion Internet et vos règles de pare-feu. Pour en savoir plus, consultez Problèmes de connectivité réseau. |
MonApiConnErr
|
Connectivité | Échec d'une requête adressée à l'API Monitoring. | Vérifiez votre connexion Internet et vos règles de pare-feu. Pour en savoir plus, consultez Problèmes de connectivité réseau. |
MonApiDisabledErr
|
API | L'API Monitoring est désactivée dans le projet Google Cloud actuel. | Activer l'API Monitoring |
MonApiPermissionErr
|
Permission |
Le compte de service ne dispose pas du rôle "Rédacteur de métriques Monitoring" (roles/monitoring.metricWriter ).
|
Attribuez le rôle Rédacteur de métriques Monitoring au compte de service. Pour en savoir plus, consultez la section Autorisations d'API manquantes pour l'agent. |
MonApiScopeErr
|
Permission | La VM ne dispose pas du niveau d'accès https://www.googleapis.com/auth/monitoring.write. | Ajoutez le champ d'application d'accès https://www.googleapis.com/auth/monitoring.write à la VM. Pour en savoir plus, consultez la page Vérifier vos niveaux d'accès. |
MonApiUnauthenticatedErr
|
API | La VM actuelle n'a pas pu s'authentifier auprès de l'API Monitoring. | Vérifiez que vos fichiers d'identifiants, vos niveaux d'accès aux VM et vos autorisations sont correctement configurés. Pour en savoir plus, consultez la page Autoriser l'agent Ops. |
OtelMetricsPortErr
|
Disponibilité des ports | Le port 20201, nécessaire pour les métriques automatiques de l'agent Ops, n'est pas disponible. | Vérifiez que le port 20201 est ouvert. Pour plus d'informations, consultez la section Un port requis n'est pas disponible. |
PacApiConnErr
|
Connectivité | Ce code de vérification d'état n'est pas fiable. Ce code est désactivé dans la version 2.46.1 de l'agent Ops. | Passez à la version 2.46.1 ou ultérieure de l'agent Ops. |
Rechercher les erreurs d'heure de début
À partir de la version 2.35.0, les informations de vérification d'état sont écrites dans le journal ops-agent-health
par l'API Cloud Logging (les versions 2.33.0 et 2.34.0 utilisent ops-agent-health-checks
). Ces informations sont également écrites dans un fichier health-checks.log
comme suit :
- Linux :
/var/log/google-cloud-ops-agent/health-checks.log
- Windows :
C:\ProgramData\Google\Cloud Operations\Ops Agent\log\health-checks.log
Vous pouvez également afficher les messages de vérification d'état en interrogeant l'état du service de l'Agent Ops comme suit :
- Sous Linux, exécutez la commande suivante :
sudo systemctl status google-cloud-ops-agent"*"
Recherchez des messages tels que "[Ports Check] Result: PASS". Les autres résultats incluent "ERROR" et "FAIL".
- Sous Windows, utilisez la Visionneuse d'événements Windows. Recherchez les messages "Information", "Error" ou "Failure" associés au service
google-cloud-ops-agent
.
Après avoir résolu les problèmes, vous devez redémarrer l'agent. Les vérifications d'état sont exécutées au démarrage de l'agent. Vous devez donc redémarrer l'agent pour les relancer.
Rechercher les erreurs d'exécution
Les vérifications d'état de l'environnement d'exécution sont transmises à la fois à Cloud Logging et à Error Reporting. Si l'agent n'a pas démarré, mais a pu signaler des erreurs avant l'échec, des erreurs d'heure de début peuvent également apparaître.
Pour afficher les erreurs d'exécution de l'agent Ops dans Logging, procédez comme suit :
-
Dans le panneau de navigation de la console Google Cloud, sélectionnez Logging, puis Explorateur de journaux :
- Saisissez la requête suivante, puis cliquez sur Exécuter la requête :
log_id("ops-agent-health")
Pour afficher les erreurs d'exécution de l'agent Ops dans Error Reporting, procédez comme suit :
-
Dans la console Google Cloud, accédez à la page Error Reporting:
Vous pouvez également accéder à cette page à l'aide de la barre de recherche.
- Pour afficher les erreurs de l'agent Ops, filtrez les erreurs pour
Ops Agent
.
Vérifier la réussite de la collecte de journaux
La version 2.46.0 de l'agent Ops a introduit la vérification d'état LogPingOpsAgent
informative. Cette vérification écrit un message d'information dans ops-agent-health
toutes les 10 minutes.
Vous pouvez utiliser la présence de ces messages pour vérifier que l'agent Ops écrit des journaux en effectuant l'une des opérations suivantes :
- Recherchez les messages ping dans les journaux d'une VM spécifique à l'aide de l'explorateur de journaux.
- Vérifiez la valeur de la métrique
log_entry_count
d'une VM spécifique à l'aide de l'explorateur de métriques. - Créez une règle d'alerte pour être informé si une VM spécifique ne met pas à jour la métrique
log_entry_count
.
Si l'une de ces options indique que les messages de journal ne sont pas ingérés, vous pouvez procéder comme suit :
- Recherchez les codes d'erreur indiquant des erreurs de démarrage ou des erreurs d'exécution.
- Déterminez si l'agent Ops est opérationnel.
- Exécutez le script de diagnostic de l'agent.
Pour vérifier l'état de l'Agent Ops sur une VM spécifique, vous devez disposer de l'ID d'instance de la VM. Pour trouver l'ID d'instance, procédez comme suit :
-
Dans la console Google Cloud, accédez à la page Instances de VM :
Accéder à la page Instances de VM
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Compute Engine.
- Cliquez sur le nom d'une instance de VM.
- Dans l'onglet Détails, localisez la section Informations générales. L'ID d'instance apparaît sous la forme d'une chaîne numérique. Utilisez cette chaîne pour la valeur INSTANCE_ID dans les sections suivantes.
Outil de diagnostic des agents pour les VM
L'outil de diagnostic des agents collecte des informations de débogage locales critiques à partir de vos VM pour tous les agents suivants : l'Agent Ops, l'ancien agent Logging et l'ancien agent Monitoring. Les informations de débogage incluent des informations sur le projet, les informations sur la VM, la configuration de l'agent, les journaux de l'agent, l'état du service de l'agent, des informations qui nécessitent généralement un travail manuel. L'outil vérifie également l'environnement de VM local pour s'assurer qu'il répond à certaines exigences pour que les agents fonctionnent correctement, par exemple la connectivité réseau et les autorisations requises.
Lorsque vous déposez une demande d'assistance pour un agent sur une VM, exécutez l'outil de diagnostic de l'agent et joignez les informations collectées à la demande. En fournissant ces informations, vous réduisez le temps nécessaire pour résoudre votre demande d'assistance. Avant de joindre les informations à la demande d'assistance, masquez toutes les informations sensibles telles que les mots de passe.
L'outil de diagnostic de l'agent doit être exécuté à partir de la VM. Vous devez donc tout d'abord généralement vous connecter en SSH à la VM. La commande suivante récupère l'outil de diagnostic de l'agent et l'exécute :
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"
Suivez le résultat de l'exécution du script pour localiser les fichiers contenant les informations collectées. Généralement, vous les trouverez dans le répertoire /var/tmp/google-agents
sous Linux et dans le répertoire $env:LOCALAPPDATA/Temp
sous Windows, sauf si vous avez personnalisé le répertoire de sortie lors de l'exécution du script.
Pour obtenir des informations détaillées, examinez le script diagnose-agents.sh
sous Linux ou le script diagnose-agents.ps1
sous Windows.
Outil de diagnostic de l'agent pour les règles d'installation automatique
Si une tentative d'installation de l'Agent Ops à l'aide d'une règle d'OS d'Agent Ops échoue, vous pouvez utiliser le script de diagnostic décrit dans cette section pour le résoudre le problème. Par exemple, vous pouvez rencontrer l'un des cas suivants :
- L'installation de l'Agent Ops échoue lorsque vous cochez la case Installer l'Agent Ops pour Monitoring et Logging pour installer l'Agent Ops lors de la création de la VM.
L'état de l'agent sur le tableau de bord Instances de VM Cloud Monitoring ou sur l'onglet Observabilité de la page d'informations de la VM Compute Engine reste dans l'état En attente pendant plus de 10 minutes. Un état prolongé En attente peut indiquer l'un des éléments suivants :
- Un problème lors de l'application de la règle
- Un problème lors de l'installation de l'Agent Ops
- Un problème de connectivité entre la VM et Cloud Monitoring
Pour certains de ces problèmes, le script de diagnostic des agents et les vérifications d'état de base peuvent également être utiles.
Pour exécuter le script de diagnostic des règles, exécutez les commandes suivantes :
curl -sSO https://dl.google.com/cloudagents/diagnose-ui-policies.sh bash diagnose-ui-policies.sh VM_NAME VM_ZONE
Ce script affiche les informations sur les VM concernées et les règles d'installation automatique associées.
Lorsque vous déposez une demande d'assistance pour un agent sur une VM, exécutez les outils de diagnostic de l'agent et joignez les informations collectées à la demande. En fournissant ces informations, vous réduisez le temps nécessaire pour résoudre votre demande d'assistance. Avant de joindre les informations à la demande d'assistance, masquez toutes les informations sensibles telles que les mots de passe.
État de l'agent
Vous pouvez vérifier l'état des processus de l'agent Ops sur la VM pour déterminer si l'agent est en cours d'exécution ou non.
Linux
Pour vérifier l'état de l'Agent Ops, exécutez la commande suivante :sudo systemctl status google-cloud-ops-agent"*"
Vérifiez que les composants "Agent de métriques" et "Agent Logging" sont listés comme "actifs (en cours d'exécution)", comme indiqué dans l'exemple de sortie suivant (certaines lignes ont été supprimées par souci de concision) :
● 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
Pour vérifier l'état de l'Agent Ops, exécutez la commande suivante :Get-Service google-cloud-ops-agent*
Vérifiez que les composants "Metrics Agent" et "Logging Agent" sont répertoriés comme "En cours d'exécution", comme illustré dans l'exemple de résultat suivant :
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
Journaux automatiques de l'agent
Si l'agent ne parvient pas à ingérer les journaux dans Cloud Logging, vous devrez peut-être inspecter les journaux de l'agent localement sur la VM pour le dépannage. Vous pouvez également utiliser la rotation des journaux pour gérer les journaux automatiques de l'agent.
Linux
Pour inspecter les journaux automatiques écrits dans Journald
, exécutez la commande suivante :
journalctl -u google-cloud-ops-agent*
Pour inspecter les journaux automatiques écrits sur le disque par le module de journalisation, exécutez la commande suivante :
vim -M /var/log/google-cloud-ops-agent/subagents/logging-module.log
Windows
Pour inspecter les journaux automatiques écrits dans Windows Event Logs
, exécutez la commande suivante :
Get-WinEvent -FilterHashtable @{ Logname='Application'; ProviderName='google-cloud-ops-agent*' } | Format-Table -AutoSize -Wrap
Pour inspecter les journaux automatiques écrits sur le disque par le module de journalisation, exécutez la commande suivante :
notepad "C:\ProgramData\Google\Cloud Operations\Ops Agent\log\logging-module.log"
Pour inspecter les journaux à partir du Windows Service Control Manager
pour les services de l'Agent Ops, exécutez la commande suivante :
Get-WinEvent -FilterHashtable @{ Logname='System'; ProviderName='Service Control Manager' } | Where-Object -Property Message -Match 'Google Cloud Ops Agent' | Format-Table -AutoSize -Wrap
Afficher les données d'utilisation et de diagnostic des métriques dans Cloud Monitoring
La page Gestion des métriques de Cloud Monitoring fournit des informations qui peuvent vous aider à contrôler les sommes que vous consacrez aux métriques facturables, sans affecter l'observabilité. La page Gestion des métriques fournit les informations suivantes :
- Les volumes d'ingestion pour la facturation à base d'octets et celle à base d'exemples, englobant les différents domaines de métriques et des métriques individuelles
- Les données sur les libellés et la cardinalité des métriques
- L'utilisation de métriques dans les règles d'alerte et les tableaux de bord personnalisés
- Les taux d'erreurs d'écriture de métriques
Procédez comme suit pour afficher la page Gestion des métriques :
-
Dans la console Google Cloud, accédez à la page
Gestion des métriques:Accédez à la page Gestion des métriques
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Surveillance.
- Dans la barre d'outils, sélectionnez votre période. Par défaut, la page Gestion des métriques affiche des informations sur les métriques collectées au cours du jour précédent.
Pour en savoir plus sur la page Gestion des métriques, consultez la section Afficher et gérer l'utilisation des métriques.