Busca información sobre la solución de problemas del Agente de operaciones

En este documento, se describen fuentes de información de diagnóstico que puedes usar para identificar problemas en la instalación o ejecución del Agente de operaciones.

Verificaciones de estado de los agentes

La versión 2.25.1 introdujo verificaciones de estado de hora de inicio para el agente de operaciones. Cuando se inicia el agente de operaciones, realiza una serie de verificaciones para detectar condiciones que impiden que el agente se ejecute de forma correcta. Si el agente detecta una de las condiciones, registra un mensaje que describe el problema. El Agente de operaciones verifica lo siguiente:

  • Problemas de conectividad
  • Disponibilidad de puertos que usa el agente para informar métricas sobre sí mismo
  • Problemas de permisos
  • Disponibilidad de las APIs que usa el agente para escribir registros o métricas
  • Un problema en la rutina de verificación de estado.
Para obtener más información para localizar errores de hora de inicio, consulta Encuentra errores de hora de inicio.

La versión 2.37.0 introdujo verificaciones de estado de entorno de ejecución para el agente de operaciones. Estos errores se informan a Cloud Logging y Error Reporting. Si deseas obtener información para ubicar los errores del entorno de ejecución, consulta Encuentra errores del entorno de ejecución.

La versión 2.46.0 introdujo el código informativo LogPingOpsAgent. Este código no representa un error. Para obtener más información, consulta Verifica la recopilación exitosa de registros.

En la siguiente tabla, se enumera cada código de verificación de estado en orden alfabético y se describe lo que significa cada código. Los códigos que terminan con la cadena Err indican errores; otros códigos son informativos.

Código de verificación de estado Categoría Significado Suggestion
DLApiConnErr Conectividad Se produjo un error en la solicitud al subdominio de descargas, dl.google.com. Revisa la conexión a Internet y las reglas de firewall. Para obtener más información, consulta Problemas de conectividad de red.
FbMetricsPortErr Disponibilidad de puertos El puerto 20202, necesario para las métricas propias del Agente de operaciones, no está disponible. Verifica que el puerto 20202 esté abierto. Para obtener más información, consulta El puerto obligatorio no está disponible.
HcFailureErr Genérico Se produjo un error interno en la rutina de verificación de estado del Agente de operaciones. Envía un caso de asistencia desde la consola de Google Cloud. Si necesitas más información, consulta Obtén asistencia.
LogApiConnErr Conectividad Se produjo un error en la solicitud a la API de Logging. Revisa la conexión a Internet y las reglas de firewall. Para obtener más información, consulta Problemas de conectividad de red.
LogApiDisabledErr API La API de Logging está inhabilitada en el proyecto actual de Google Cloud. Habilita la API de Logging.
LogApiPermissionErr Permiso A la cuenta de servicio le falta el rol de escritor de registros (roles/logging.logWriter). Otorga el rol de escritor de registros a la cuenta de servicio. Para obtener más información, consulta El agente no tiene permisos de API.
LogApiScopeErr Permiso A la VM le falta el permiso de acceso https://www.googleapis.com/​auth/​logging.write. Agrega el permiso https://www.googleapis.com/​auth/​logging.write scope a la VM. Para obtener más información, consulta Verifica tus permisos de acceso.
LogApiUnauthenticatedErr API La VM actual no pudo autenticarse en la API de Logging. Verifica que los archivos de credenciales, los permisos de acceso a la VM y los permisos estén configurados de forma correcta. Para obtener más información, consulta Autoriza el Agente de operaciones.
LogPingOpsAgent   Un mensaje de carga útil informativo escrito cada 10 minutos en el registro ops-agent-health. Puedes usar las entradas de registro resultantes para verificar que el agente envíe registros. Este mensaje no es un error. Se espera que este mensaje aparezca cada 10 minutos. Si el mensaje no aparece durante 20 minutos o más, es posible que el agente haya encontrado un problema. Para obtener información sobre la solución de problemas, consulta Soluciona problemas del Agente de operaciones.
LogParseErr Entorno de ejecución El agente de operaciones no pudo analizar uno o más registros. Verifica la configuración de cualquier procesador de registro que hayas creado. Para obtener más información, consulta Errores de análisis de registros.
LogPipeLineErr Entorno de ejecución La canalización del agente de operaciones falló. Verifica que el agente tenga acceso a los archivos del búfer. Comprueba si hay un disco completo y verifica que la configuración del agente de operaciones sea correcta. Para obtener más información, consulta Errores de canalización.
MetaApiConnErr Conectividad Falló la solicitud al servidor de metadatos de GCE para consultar permisos de acceso a VMs, tokens de OAuth y etiquetas de recursos. Revisa la conexión a Internet y las reglas de firewall. Para obtener más información, consulta Problemas de conectividad de red.
MonApiConnErr Conectividad Falló una solicitud a la API de Monitoring. Revisa la conexión a Internet y las reglas de firewall. Para obtener más información, consulta Problemas de conectividad de red.
MonApiDisabledErr API La API de Monitoring está inhabilitada en el proyecto actual de Google Cloud. Habilita la API de Monitoring.
MonApiPermissionErr Permiso A la cuenta de servicio le falta el rol de escritor de métricas de Monitoring (roles/monitoring.metricWriter). Otorga el rol de escritor de métricas de Monitoring a la cuenta de servicio: Para obtener más información, consulta El agente no tiene permisos de API.
MonApiScopeErr Permiso A la VM le falta el permiso de acceso https://www.googleapis.com/​auth/​monitoring.write. Agrega el permiso https://www.googleapis.com/​auth/​monitoring.write a la VM. Para obtener más información, consulta Verifica tus permisos de acceso.
MonApiUnauthenticatedErr API La VM actual no pudo autenticarse en la API de Monitoring. Verifica que los archivos de credenciales, los permisos de acceso a la VM y los permisos estén configurados de forma correcta. Para obtener más información, consulta Autoriza el Agente de operaciones.
OtelMetricsPortErr Disponibilidad de puertos El puerto 20201, necesario para las métricas propias del Agente de operaciones, no está disponible. Verifica que el puerto 20201 esté abierto. Para obtener más información, consulta Un puerto requerido no está disponible.
PacApiConnErr Conectividad La solicitud al repositorio de paquetes, packages.cloud.google.com, falló. Revisa la conexión a Internet y las reglas de firewall. Para obtener más información, consulta Problemas de conectividad de red.

Busca errores de hora de inicio

A partir de la versión 2.35.0, la API de Cloud Logging escribe la información de la verificación de estado en el registro ops-agent-health (las versiones 2.33.0 y 2.34.0 usan ops-agent-health-checks). La misma información también se escribe en un archivo health-checks.log de la siguiente manera:

  • Linux: /var/log/google-cloud-ops-agent/health-checks.log
  • Windows: C:\ProgramData\Google\Cloud Operations\Ops Agent\log\health-checks.log

También puedes ver cualquier mensaje de verificación de estado cuando consultas el estado del servicio del agente de operaciones de la siguiente manera:

  • En Linux, ejecuta el siguiente comando:
       sudo systemctl status google-cloud-ops-agent"*"
       

    Busca mensajes como "[Ports Check] Result: PASS". Otros resultados incluyen “ERROR” y “FAIL”.

  • En Windows, usa el Visor de eventos de Windows. Busca mensajes de "Información", "Error" o "Falla" asociados con el servicio google-cloud-ops-agent.

Después de resolver cualquier problema, debes reiniciar el agente. Las verificaciones de estado se ejecutan cuando se inicia el agente, por lo que debes volver a ejecutar las verificaciones para reiniciar el agente.

Encuentra errores del entorno de ejecución

Las verificaciones de estado del entorno de ejecución se informan a Cloud Logging y Error Reporting. Si el agente no se pudo iniciar, pero pudo informar errores antes de que falle, es posible que también veas errores de hora de inicio.

Para ver los errores del entorno de ejecución en el agente de operaciones en Logging, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, selecciona Logging y, luego, Explorador de registros:

    Ir al Explorador de registros

  2. Ingresa la siguiente consulta y haz clic en Ejecutar consulta:
    log_id("ops-agent-health")

Para ver los errores del entorno de ejecución del Agente de operaciones en Error Reporting, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, selecciona Error Reporting y, luego, tu proyecto de Google Cloud:

    Ir a Error Reporting

  2. Para ver los errores del Agente de operaciones, filtra los errores de Ops Agent.

Verifica la recopilación exitosa de registros

La versión 2.46.0 del Agente de operaciones introdujo la verificación de estado LogPingOpsAgent informativa. Con esta verificación, se escribe un mensaje informativo en ops-agent-health cada 10 minutos. Puedes usar la presencia de estos mensajes para verificar que el Agente de operaciones escriba registros a través de alguna de las siguientes acciones:

Si alguna de estas opciones indica que los mensajes de registro no se están transfiriendo, puedes hacer lo siguiente:

Para verificar el estado del Agente de operaciones en una VM específica, necesitas el ID de instancia de la VM. Para encontrar el ID de instancia, haz lo siguiente:

  • En el panel de navegación de la consola de Google Cloud, elige Compute Engine y, luego, Instancias de VM.

    Ir a Instancias de VM

  • Haz clic en el nombre de una instancia de VM.
  • En la pestaña Detalles, busca la sección Información básica. El ID de instancia aparece como cadena numérica. Usa esta cadena para el valor INSTANCE_ID en las secciones posteriores.

Herramienta de diagnóstico de agente para VMs

La herramienta de diagnóstico del agente recopila información esencial de depuración local de tus VMs para todos los agentes siguientes: agente de operaciones, agente de Logging heredado y agente de Monitoring heredado. La información de depuración incluye información como la información del proyecto, la información de VM, la configuración del agente, los registros del agente, el estado del servicio del agente, la información que suele requerir trabajo manual. La herramienta también verifica el entorno de VM local para garantizar que cumpla con ciertos requisitos para que los agentes funcionen correctamente, por ejemplo, la conectividad de red y los permisos necesarios.

Cuando presentas un caso de cliente para un agente en una VM, ejecuta la herramienta de diagnóstico de agente y adjunta la información recopilada al caso. Proporciona esta información para reducir el tiempo necesario para solucionar problemas de tu caso de asistencia. Antes de adjuntar la información al caso de asistencia, oculta cualquier información sensible, como contraseñas.

La herramienta de diagnóstico de agentes debe ejecutarse desde la VM, por lo que, por lo general, primero deberás establecer una conexión SSH a la VM. El siguiente comando recupera la herramienta de diagnóstico del agente y la ejecuta:

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"

Sigue el resultado de la ejecución de la secuencia de comandos para ubicar los archivos que incluyen la información recopilada. Por lo general, los puedes encontrar en el directorio /var/tmp/google-agents en Linux y en el directorio $env:LOCALAPPDATA/Temp en Windows, a menos que hayas personalizado el directorio de salida cuando ejecutes la secuencia de comandos.

Para obtener información detallada, examina la secuencia de comandos diagnose-agents.sh en Linux o la secuencia de comandos diagnose-agents.ps1 en Windows.

Herramienta de diagnóstico de agentes para políticas de instalación automática

Cuando falla un intento de instalar el agente de operaciones a través de una política del SO del agente de operaciones, puedes usar la secuencia de comandos de diagnóstico que se describe en esta sección para la depuración. Por ejemplo, es posible que veas uno de los siguientes casos:

  • La instalación del agente de operaciones falla cuando usaste la casilla de verificación Instala el agente de operaciones para Monitoring y Logging para instalar el agente de operaciones durante la creación de la VM.
  • El estado del agente en el panel Instancias de VM de Cloud Monitoring o en la pestaña Observabilidad de una página de detalles de VM de Compute Engine permanece en el estado Pendiente durante más de 10 minutos. Un estado prolongado Pendiente podría indicar uno de los siguientes problemas:

    • Hay un problema al aplicar la política.
    • Un problema en la instalación real del Agente de operaciones.
    • Un problema de conectividad entre la VM y Cloud Monitoring.

    Para algunos de estos problemas, la secuencia de comandos de diagnóstico del agente y las verificaciones de estado generales también pueden ser útiles.

Para ejecutar la secuencia de comandos de diagnóstico de políticas, ejecuta los siguientes comandos:

curl -sSO https://dl.google.com/cloudagents/diagnose-ui-policies.sh
bash diagnose-ui-policies.sh VM_NAME VM_ZONE

En esta secuencia de comandos, se muestra información sobre las VMs afectadas y las políticas de instalación automática relacionadas.

Cuando presentas un caso de cliente para un agente en una VM, ejecuta las herramientas de diagnóstico de agente y adjunta la información recopilada al caso. Proporciona esta información para reducir el tiempo necesario para solucionar problemas de tu caso de asistencia. Antes de adjuntar la información al caso de asistencia, oculta cualquier información sensible, como contraseñas.

Estado del agente

Puedes verificar el estado de los procesos del Agente de operaciones en la VM para determinar si el agente está en ejecución o no.

Linux

Para verificar el estado del agente de operaciones, usa el siguiente comando:

sudo systemctl status google-cloud-ops-agent"*"

Verifica que los componentes del "agente de métricas" y el "agente de Logging" aparezcan como "activos (en ejecución)", como se muestra en el siguiente resultado de muestra (se quitaron algunas líneas para abreviar):

● 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

Para verificar el estado del agente de operaciones, usa el siguiente comando:

Get-Service google-cloud-ops-agent*

Verifica que los componentes “Agente de métricas” y “Agente de Logging” aparezcan como “En ejecución”, como se muestra en el siguiente resultado de ejemplo:

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

Registros propios del agente

Si el agente no puede transferir registros a Cloud Logging, es posible que debas inspeccionar los registros del agente de forma local en la VM para solucionar problemas. También puedes usar la rotación del registro para administrar los registros propios del agente.

Linux

Para inspeccionar los registros propios que se escriben en Journald, ejecuta el siguiente comando:

journalctl -u google-cloud-ops-agent*

Para inspeccionar los registros propios que el módulo de registro escribe en el disco, ejecuta el siguiente comando:

vim -M /var/log/google-cloud-ops-agent/subagents/logging-module.log

Windows

Para inspeccionar los registros propios que se escriben en Windows Event Logs, ejecuta el siguiente comando:

Get-WinEvent -FilterHashtable @{ Logname='Application'; ProviderName='google-cloud-ops-agent*' } | Format-Table -AutoSize -Wrap

Para inspeccionar los registros propios que el módulo de registro escribe en el disco, ejecuta el siguiente comando:

notepad "C:\ProgramData\Google\Cloud Operations\Ops Agent\log\logging-module.log"

Para inspeccionar los registros de Windows Service Control Manager para los servicios del agente de operaciones, ejecuta el siguiente comando:

Get-WinEvent -FilterHashtable @{ Logname='System'; ProviderName='Service Control Manager' } | Where-Object -Property Message -Match 'Google Cloud Ops Agent' | Format-Table -AutoSize -Wrap

Visualiza el uso y el diagnóstico de las métricas en Cloud Monitoring

En la página Administración de métricas de Cloud Monitoring, se proporciona información que puede ayudarte a controlar el importe que inviertes en las métricas cobrables sin afectar la observabilidad. En la página Administración de métricas, se informa la siguiente información:

  • Los volúmenes de transferencia para la facturación basada en bytes y de muestra, en todos los dominios de métricas y para las métricas individuales.
  • Datos sobre etiquetas y cardinalidad de métricas.
  • Uso de métricas en políticas de alertas y paneles personalizados.
  • Tasa de errores de escritura de métricas.

Para ver la página Administración de métricas, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, selecciona Monitoring y, luego,  Administración de métricas.

    Ir a Administración de métricas

  2. En la barra de herramientas, selecciona tu período. De forma predeterminada, la página Administración de métricas muestra información sobre las métricas recopiladas en el día anterior.

Para obtener más información sobre la página Administración de métricas, consulta Visualiza y administra el uso de métricas.