¿Por qué no puedo enviar datos de registro a los Registros de CloudWatch con el agente awslogs?

4 minutos de lectura
0

No puedo enviar datos de registro a los Registros de Amazon CloudWatch mediante el agente de registros de CloudWatch (awslogs).

Resolución

Antes de empezar, confirme que el agente awslogs puede conectarse al punto de conexión de la API de registros de CloudWatch.

Asegúrese de que la configuración tenga los siguientes atributos:

  • Conectividad a Internet
  • Configuraciones de grupos de seguridad válidas
  • Listas de control de acceso a la red (ACL de la red) válidas

Importante: Esta referencia es para el agente anterior de los registros de CloudWatch que ya no es compatible. Si usa la versión 2 del servicio de metadatos de instancias (IMDSv2), debe usar el nuevo agente unificado de CloudWatch. Aunque no utilice IMDSv2, se recomienda utilizar el nuevo agente unificado de CloudWatch en lugar del agente de registros.

Problemas con las huellas digitales

Revise las líneas de encabezado del archivo de registro de origen. La ruta de este archivo se establece al configurar los datos que se enviarán a CloudWatch.

  • Si las primeras líneas están en blanco o contienen datos que no son de eventos y permanecen iguales, es posible que haya problemas con el hash de identificación del registro.
  • Si las líneas de encabezado son las mismas, actualice la opción file_fingerprint_lines del archivo de configuración del agente. Asegúrese de especificar las líneas de cada archivo que se utilicen para generar el hash de identificación.

Comprobar si hay errores en el archivo de registro awslogs

Revise el archivo de registro /var/log/awslogs.log. Asegúrese de anotar cualquier mensaje de error.

Estos son algunos errores de permisos:

  • NoCredentialsError: no se pueden encontrar las credenciales. Si no ha añadido un rol de AWS Identity and Access Management (IAM) a la instancia, cree y adjunte un rol de IAM. Si ya ha añadido un rol de IAM a la instancia, actualice las credenciales de usuario de IAM del archivo /etc/awslogs/awscli.conf.
  • ClientError: Se produjo un error (AccessDeniedException) al llamar a la operación PutLogEvents: El usuario: arn:aws:iam::012345678910: / no está autorizado a realizar: logs:PutLogEvents[...]. Configure el rol o usuario de IAM con los permisos necesarios para los registros de CloudWatch.

Estos son algunos errores de marca de tiempo:

  • Volver a la hora del evento anterior: {'timestamp': 1492395793000, 'start_position': 17280L, 'end_position': 17389L}, previousEventTime: 1492395793000, motivo: no se pudo analizar la marca de tiempo del mensaje. Confirme que los eventos de registro comiencen con una marca de tiempo. Compruebe si el datetime_format especificado en /etc/awslogs/awslogs.conf coincide con el formato de marca de tiempo de los eventos de registro. Cambie el datetime_format para que coincida con el formato de marca de tiempo según sea necesario.
  • No se encuentra ningún archivo con la ruta determinada «». Actualice la ruta del archivo de registro en el archivo de configuración del agente con la ruta correcta.

Otros problemas de awslogs

  • Si los registros dejaron de publicarse después de una rotación de registros, compruebe los métodos de rotación de registros admitidos. Para obtener más información, consulte Preguntas frecuentes sobre los agentes de registros de CloudWatch.
  • Si los registros se envían brevemente solo después de reiniciar el agente awslogs, compruebe si hay duplicados en la sección [logstream] del archivo de configuración del agente. Cada sección debe tener un nombre único.
  • Si el archivo de registro awslogs.log ocupa demasiado espacio en disco, compruebe si hay errores en el archivo de registro y corríjalos. Si el archivo de registro contiene solo mensajes informativos, especifique un nivel de registro inferior para la opción logging_config_file del archivo de configuración del agente.

Solución de otros problemas

Para solucionar otros problemas, anote el instance-id (el ID de tu instancia). A continuación, recopile y revise lo siguiente según su configuración.

Instalaciones de Yum:

  • Versión de yum
$ yum info awslogs
$ yum info aws-cli-plugin-cloudwatch-logs
  • Archivo /etc/awslogs/awslogs.conf
  • Archivo /etc/awslogs/awscli.conf
  • Otros archivos relevantes en /etc/awslogs/
  • Archivo /var/log/awslogs.log

Instalaciones basadas en scripts:

  • La versión de awslogs, obtenida con el siguiente comando:
$ /var/awslogs/bin/awslogs-version.sh
  • Archivo /var/awslogs/etc/awslogs.conf
  • Archivo /var/awslogs/etc/awscli.conf
  • Otros archivos relevantes en /var/awslogs/etc/
  • /var/log/awslogs.log
  • /var/log/awslogs-agent-setup.log

En caso de problemas relacionados con la rotación, recopile y revise lo siguiente:

  • Un fragmento de los registros de origen.
  • Una lista del contenido del directorio de destino de control. Use el comando ls -la con la ruta del directorio para obtener lo siguiente:
$ ls -la <Monitoring-Target-Directory-Path>

Información relacionada

Introducción a los registros de CloudWatch

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año