Cree o edite de forma manual el archivo de configuración del agente de CloudWatch - Amazon CloudWatch

Cree o edite de forma manual el archivo de configuración del agente de CloudWatch

El archivo de configuración del agente de CloudWatch es un archivo JSON con tres secciones: agent, metrics, logs y traces.

  • La sección agent incluye los campos de la configuración general del agente.

  • La sección metrics especifica las métricas personalizadas para la recopilación y publicación en CloudWatch. Si utiliza el agente únicamente para recopilar registros, puede omitir la sección metrics del archivo.

  • La sección logs especifica qué archivos de registro se publican en CloudWatch Logs. Se pueden incluir los eventos del registro de eventos de Windows, si el servidor ejecuta Windows Server.

  • La sección traces especifica las fuentes de los seguimientos que se recopilan y a las que se envían a AWS X-Ray.

En esta sección se explica la estructura y los campos del archivo de configuración del agente de CloudWatch. Puede ver la definición de esquema de este archivo de configuración. La definición de esquema se encuentra en installation-directory/doc/amazon-cloudwatch-agent-schema.json en los servidores Linux y en installation-directory/amazon-cloudwatch-agent-schema.json en los servidores con Windows Server.

Si crea o edita el archivo de configuración del agente de manualmente, puede asignarle cualquier nombre. Para simplificar la solución de problemas, le recomendamos que asigne el nombre /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json en un servidor Linux y $Env:ProgramData\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent.json en los servidores con Windows Server. Después de crear el archivo, puede copiarlo en otros servidores en los que desee instalar el agente.

nota

Las métricas, los registros y los seguimientos recopilados por el agente de CloudWatch conllevan cargos. Para obtener más información sobre precios, consulte Precios de Amazon CloudWatch.

La sección agent puede incluir los siguientes campos. El asistente no crea una sección agent. En su lugar, el asistente la omite y usa los valores predeterminados de todos los campos de esta sección.

  • metrics_collection_interval: opcional. Especifica la frecuencia con que se deben recopilar todas las métricas especificadas en este archivo de configuración. Puede invalidar este valor para determinados tipos de métricas.

    Este valor se especifica en segundos. Por ejemplo, indicar 10 hace que las métricas se deben recopilar cada 10 segundos y establecerlo en 300 especifica que las métricas se deben recopilar cada 5 minutos.

    Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información acerca de las métricas de alta resolución, consulte Métricas de alta resolución.

    El valor predeterminado es 60.

  • region: especifica la región que se va a utilizar para el punto de enlace de CloudWatch cuando se supervisa una instancia de Amazon EC2. Las métricas recopiladas se envían a esta región, como us-west-1. Si omite este campo, el agente envía métricas a la región donde se encuentra la instancia de Amazon EC2.

    Si está supervisando un servidor en las instalaciones, este campo no se utiliza y el agente lee la región del perfil AmazonCloudWatchAgent del archivo de configuración de AWS.

  • credentials: especifica un rol de IAM que se usará al enviar métricas, registros y seguimientos a una cuenta de AWS diferente. Si se especifica, este campo contiene un parámetro, role_arn.

  • debug: opcional. Especifica la ejecución del agente de CloudWatch con mensajes de registro de depuración. El valor predeterminado es false.

  • aws_sdk_log_level: opcional. Se admite en la versión 1.247350.0 y versiones posteriores del agente de CloudWatch.

    Puede especificar este campo para que el agente realice el registro para puntos de conexión SDK AWS. El valor de este campo puede incluir una o más de las siguientes opciones. Separe varias opciones con el character |.

    • LogDebug

    • LogDebugWithSigning

    • LogDebugWithHTTPBody

    • LogDebugRequestRetries

    • LogDebugWithEventStreamBody

    Para obtener más información sobre estas opciones, consulte LogLevelType.

  • logfile: especifica la ubicación en la que el agente de CloudWatch ingresa los mensajes de registro. Si especifica una cadena vacía, el registro se envía a stderr. Si no especifica esta opción, las ubicaciones predeterminadas son las siguientes:

    • Linux: /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log

    • Windows Server: c:\\ProgramData\\Amazon\\CloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log

    El agente de CloudWatch rota automáticamente el archivo de registro que crea. Un archivo de registro rota cuando su tamaño alcanza los 100 MB. El agente conserva los archivos de registro rotados durante un máximo de siete días y mantiene cinco archivos de registro de copia de seguridad que se han rotado. Los archivos de registro de copia de seguridad tienen una marca temporal añadida al nombre de archivo. La marca de tiempo muestra la fecha y la hora en que se rotó el archivo (por ejemplo, amazon-cloudwatch-agent-2018-06-08T21-01-50.247.log.gz).

  • omit_hostname: opcional. De forma predeterminada, el nombre del host se publica como una dimensión de métricas que el agente recopila.append_dimensionsmetrics Establezca omit_hostname a true para evitar que el nombre de host se publique como una dimensión incluso si usted no está utilizando append_dimensions. El valor predeterminado es false.

  • run_as_user: opcional. Especifica el usuario que se va a utilizar para ejecutar el agente de CloudWatch. Si no especifica este parámetro, se utiliza el usuario raíz. Esta opción solo es válida en los servidores Linux.

    Si especifica esta opción, el usuario debe haber sido creado antes de iniciar el agente de CloudWatch. Para obtener más información, consulte Ejecución del agente de CloudWatch como otro usuario.

  • user_agent: opcional. Especifique la secuencia user-agent que utiliza el agente de CloudWatch cuando realiza llamadas a la API al backend de CloudWatch. El valor predeterminado es una cadena que consta de la versión del agente, la versión del lenguaje de programación Go que se ha utilizado para compilar el agente, el tiempo de ejecución del sistema operativo y de la arquitectura, el tiempo de compilación y los complementos habilitados.

  • usage_data: opcional. De forma predeterminada, el agente de CloudWatch envía datos de estado y rendimiento sobre sí mismo a CloudWatch cada vez que publica métricas o registros en CloudWatch. Estos datos no suponen ningún coste para usted. Puede impedir que el agente envíe estos datos especificando false para usage_data. Si omite este parámetro, true se utiliza el valor por defecto y el agente envían datos de mantenimiento y rendimiento.

    Si establece este valor en false, debe detener y reiniciar el agente para que surta efecto.

  • service.name: opcional. Especifica el nombre del servicio que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

  • deployment.environment: opcional. Especifica el nombre del entorno que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

A continuación se muestra un ejemplo de una sección agent.

"agent": { "metrics_collection_interval": 60, "region": "us-west-1", "logfile": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log", "debug": false, "run_as_user": "cwagent" }

Campos comunes para Linux y Windows

En los servidores con Linux o Windows Server, la sección metrics incluye los siguientes campos:

  • namespace: opcional. El espacio de nombres que se usará para las métricas recopiladas por el agente. El valor predeterminado es CWAgent. La longitud máxima es de 255 caracteres. A continuación, se muestra un ejemplo:

    { "metrics": { "namespace": "Development/Product1Metrics", ...... }, }
  • append_dimensions: opcional. Agrega las dimensiones de métricas de Amazon EC2 a todas las métricas que el agente recopila. Esto también hace que el agente no publique el nombre del host como una dimensión.

    Los únicos pares clave-valor admitidos se muestran en la siguiente lista.append_dimensions Cualquier otro par clave-valor se omite. El agente admite estos pares de clave-valor tal y como se muestran en la siguiente lista. No puede cambiar los valores clave para publicar nombres de dimensiones diferentes para ellos.

    • "ImageId":"${aws:ImageId}" establece el ID de AMI de la instancia como el valor de la dimensión ImageId.

    • "InstanceId":"${aws:InstanceId}" establece el ID de instancia de la instancia como el valor de la dimensión InstanceId.

    • "InstanceType":"${aws:InstanceType}" establece el tipo de instancia de la instancia como el valor de la dimensión InstanceType.

    • "AutoScalingGroupName":"${aws:AutoScalingGroupName}" establece el nombre del grupo de Auto Scaling de la instancia como el valor de la dimensión AutoScalingGroupName.

    Si desea añadir dimensiones a las métricas con pares de clave-valor arbitrarios, utilice el parámetro append_dimensions en el campo para ese tipo concreto de métrica.

    Si especifica un valor que depende de metadatos de Amazon EC2 y utiliza proxies, debe asegurarse de que el servidor puede obtener acceso al punto de enlace de Amazon EC2. Para obtener más información sobre estos puntos de conexión, consulte Amazon Elastic Compute Cloud (Amazon EC2) en Referencia general de Amazon Web Services.

  • aggregation_dimensions: opcional. Especifica las dimensiones que se agregarán a las métricas recopiladas. Por ejemplo, si acumula métricas en la dimensión AutoScalingGroupName, se agregan las métricas de todas las instancias de cada grupo de Auto Scaling y se pueden ver como un conjunto.

    Puede acumular las métricas en una o varias dimensiones. Por ejemplo, si se especifica [["InstanceId"], ["InstanceType"], ["InstanceId","InstanceType"]], se agrupan las métricas por ID de instancia individualmente, por tipo de instancia individualmente y por la combinación de las dos dimensiones.

    También puede especificar [] para acumular todas las métricas en una sola colección y descartar todas las dimensiones.

  • endpoint_override: especifica un punto de enlace FIPS o un vínculo privado que se va a utilizar como punto final donde el agente envía métricas. Si lo especifica y establece un enlace privado, podrá enviar las métricas a un punto de enlace de la Amazon VPC. Para obtener más información, consulte What Is Amazon VPC? (¿Qué es Amazon VPC?)

    El valor de endpoint_override debe ser una cadena que sea una URL.

    Por ejemplo, la siguiente parte de la sección de métricas del archivo de configuración establece que el agente utilizará un punto de enlace de la VPC al enviar métricas.

    { "metrics": { "endpoint_override": "vpce-XXXXXXXXXXXXXXXXXXXXXXXXX.monitoring.us-east-1.vpce.amazonaws.com", ...... }, }
  • metrics_collected: obligatorio. Especifica qué métricas se van a recopilar, incluidas las métricas personalizadas recopiladas a través de StatsD o collectd. Esta sección incluye varias subsecciones.

    El contenido de la sección metrics_collected dependerá de si este archivo de configuración es para un servidor con Linux o Windows Server.

  • metrics_destinations: opcional. Especifica uno o más destinos para todas las métricas que se definen en metrics_collected. Si se especifica aquí, invalida el destino predeterminado de cloudwatch.

    • cloudwatch: Amazon CloudWatch.

    • amp: Amazon Managed Service para Prometheus.

      • workspace_id: el ID correspondiente al espacio de trabajo de Amazon Managed Service para Prometheus.

    { "metrics": { "metrics_destinations": { "cloudwatch": {}, "amp": { "workspace_id": "ws-abcd1234-ef56-7890-ab12-example" } } } }
  • force_flush_interval: especifica en segundos la cantidad máxima de tiempo que las métricas permanecen en el búfer de memoria antes de enviarse al servidor. Independientemente del valor de esta opción, si el tamaño de las métricas en el búfer alcanza 1 MB o 1000 métricas diferentes, las métricas se envían inmediatamente al servidor.

    El valor predeterminado es 60.

  • credentials: especifica un rol de IAM que se usará al enviar métricas a una cuenta diferente. Si se especifica, este campo contiene un parámetro, role_arn.

    • role_arn: especifica el ARN de un rol de IAM que se utilizará para la autenticación al enviar métricas a una cuenta diferente. Para obtener más información, consulte Envío de métricas, registros y seguimientos a una cuenta diferente. Si se especifica aquí, este valor sobrescribe el valor de role_arn especificado en la sección agent del archivo de configuración, si existe.

    • service.name: opcional. Especifica el nombre del servicio que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

    • deployment.environment: opcional. Especifica el nombre del entorno que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

Sección de Linux

En los servidores que ejecutan Linux, la sección metrics_collected del archivo de configuración también puede contener los siguientes campos.

Muchos de estos campos pueden incluir una sección measurement donde se muestran las métricas que se deben recopilar para ese recurso. Estas secciones measurement pueden especificar el nombre completo de la métrica, por ejemplo, swap_used, o simplemente la parte del nombre de la métrica que se añadirá al tipo de recurso. Por ejemplo, si se especifica reads en la sección measurement de la sección diskio, se recopilará la métrica diskio_reads.

  • collectd: opcional. Indica que desea recuperar métricas personalizadas mediante el protocolo collectd. El software collectd se utiliza para enviar las métricas al agente de CloudWatch. Para obtener más información sobre las opciones de configuración disponibles para collectd, consulte Recuperación de las métricas personalizadas con collectd.

  • cpu: opcional. Especifica qué métricas de CPU se van a recopilar. Esta sección solo es válida para las instancias de Linux. Debe incluir al menos uno de los campos resources y totalcpu para todas las métricas de CPU que se recopilen. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • resources: opcional. Especifique este campo con un valor de * para provocar que se recopilen métricas por CPU. El único valor permitido es *.

    • totalcpu: opcional. Especifica si se registrarán las métricas de cpu agregadas en todos los núcleos de cpu. El valor predeterminado es true.

    • measurement: especifica la matriz de métricas de la cpu que se recopilarán. Los posibles valores son time_active, time_guest, time_guest_nice, time_idle, time_iowait, time_irq, time_nice, time_softirq, time_steal, time_system, time_user, usage_active, usage_guest, usage_guest_nice, usage_idle, usage_iowait, usage_irq, usage_nice, usage_softirq, usage_steal, usage_system y usage_user. Este campo es obligatorio si incluye cpu.

      De forma predeterminada, la unidad de las métricas de cpu_usage_* es Percent, y las métricas de cpu_time_* no tienen una unidad.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de cpu, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos. Por ejemplo, indicar 10 hace que las métricas se deben recopilar cada 10 segundos y establecerlo en 300 especifica que las métricas se deben recopilar cada 5 minutos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información acerca de las métricas de alta resolución, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Las dimensiones adicionales que se utilizarán únicamente para las métricas de cpu. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions global que se utiliza para todos los tipos de métricas recopiladas por el agente.

  • disk: opcional. Especifica qué métricas de disk se recopilarán. Recopila métricas solo para los volúmenes montados. Esta sección solo es válida para las instancias de Linux. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • resources: opcional. Especifica una matriz de puntos de montaje de disco. Este campo limita a CloudWatch para recopilar métricas únicamente de los puntos de montaje en la lista. Puede especificar * como el valor para recopilar métricas de todos los puntos de montaje. El valor predeterminado es recopilar métricas de todos los puntos de montaje.

    • measurement: especifica la matriz de métricas de disco que se recopilarán. Los posibles valores son free, total, used, used_percent, inodes_free, inodes_used y inodes_total. Este campo es obligatorio si incluye disk.

      nota

      Las métricas de disk tienen una dimensión para Partition, lo que significa que el número de métricas personalizadas generadas depende del número de particiones asociadas a la instancia. El número de particiones de disco del que dispone depende de la AMI que esté utilizando y del número de volúmenes de Amazon EBS que adjunte al servidor.

      Para ver las unidades predeterminadas de cada métrica de disk, consulte Métricas que el agente de CloudWatch recopila en instancias de Linux y de macOS.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • ignore_file_system_types: especifica los tipos de sistema de archivos que se excluirán al recopilar métricas de disco. Los valores válidos incluyen sysfs, devtmpfs, etc.

    • drop_device: cambiarlo a true hace que el Device no se incluya como una dimensión para las métricas de disco.

      Evitar que el Device se utilice como dimensión puede resultar útil en las instancias que utilizan el sistema Nitro, ya que en dichas instancias los nombres de dispositivo cambian para cada montaje de disco cuando se reinicia la instancia. Esto puede provocar que los datos de las métricas sean incoherentes y que las alarmas basadas en estas métricas pasen al estado INSUFFICIENT DATA.

      El valor predeterminado es false.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de disco, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Especifique los pares de clave-valor que utilizará como dimensiones adicionales únicamente para las métricas de disco. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions que se usa para todos los tipos de métricas recopiladas por el agente.

      Un par clave-valor que puede utilizar es el siguiente. También puede especificar otros pares de clave-valor personalizados.

      • "VolumeId":"${aws:VolumeId}" agrega una dimensión VolumeId a las métricas de disco de su dispositivo de bloques. En el caso de los volúmenes de Amazon EBS, será el ID del volumen de Amazon EBS. En el caso del almacén de instancias de EC2, será el número de serie del dispositivo. Para usarlo, es necesario establecer el parámetro drop_device en false.

  • diskio: opcional. Especifica qué métricas de entrada/salida de disco se van a recopilar. Esta sección solo es válida para las instancias de Linux. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • resources: opcional. Si especifica una matriz de dispositivos, CloudWatch recopila métricas solo de esos dispositivos. De lo contrario, se recopilan las métricas de todos los dispositivos. También puede especificar * como el valor para recopilar métricas de todos los dispositivos.

    • measurement: especifica la matriz de las métricas de disco que se recopilarán. Los valores posibles son reads, writes, read_bytes, write_bytes, read_time, write_time, io_time e iops_in_progress. Este campo es obligatorio si incluye diskio.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de entrada/salida de disco, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información acerca de las métricas de alta resolución, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Las dimensiones adicionales que se utilizarán únicamente para las métricas de entrada/salida de disco. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions que se usa para todos los tipos de métricas recopiladas por el agente.

  • swap: opcional. Especifica qué métricas de memoria de intercambio se recopilarán. Esta sección solo es válida para las instancias de Linux. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • measurement: especifica la matriz de métricas de intercambio que se recopilarán. Los posibles valores son free, used y used_percent. Este campo es obligatorio si incluye swap.

      Para ver las unidades predeterminadas de cada métrica de swap, consulte Métricas que el agente de CloudWatch recopila en instancias de Linux y de macOS.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de intercambio, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información acerca de las métricas de alta resolución, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Las dimensiones adicionales que se utilizarán únicamente para las métricas de intercambio. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions global que se usa para todos los tipos de métricas recopiladas por el agente. Se recopila como una métrica de alta resolución.

  • mem: opcional. Especifica qué métricas de memoria se recopilarán. Esta sección solo es válida para las instancias de Linux. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • measurement: especifica qué métricas de memoria se recopilarán. Los posibles valores son active, available, available_percent, buffered, cached, free, inactive, total, used y used_percent. Este campo es obligatorio si incluye mem.

      Para ver las unidades predeterminadas de cada métrica de mem, consulte Métricas que el agente de CloudWatch recopila en instancias de Linux y de macOS.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de memoria, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información acerca de las métricas de alta resolución, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Las dimensiones adicionales que se utilizarán únicamente para las métricas de memoria. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions que se utiliza para todos los tipos de métricas recopiladas por el agente.

  • net: opcional. Especifica qué métricas de red se recopilarán. Esta sección solo es válida para las instancias de Linux. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • resources: opcional. Si especifica una matriz de interfaces de red, CloudWatch recopila métricas solo de esas interfaces. De lo contrario, se recopilan las métricas de todos los dispositivos. También puede especificar * como el valor para recopilar métricas de todas las interfaces.

    • measurement: especifica la matriz de métricas de red que se recopilarán. Los valores posibles son bytes_sent, bytes_recv, drop_in, drop_out, err_in, err_out, packets_sent e packets_recv. Este campo es obligatorio si incluye net.

      Para ver las unidades predeterminadas de cada métrica de net, consulte Métricas que el agente de CloudWatch recopila en instancias de Linux y de macOS.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de red, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos. Por ejemplo, indicar 10 hace que las métricas se deben recopilar cada 10 segundos y establecerlo en 300 especifica que las métricas se deben recopilar cada 5 minutos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información acerca de las métricas de alta resolución, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Las dimensiones adicionales que se utilizarán únicamente para las métricas de red. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions que se utiliza para todos los tipos de métricas recopiladas por el agente.

  • netstat: opcional. Especifica que se recopilen las métricas de estado de conexión TCP y de contraseñas UDP. Esta sección solo es válida para las instancias de Linux. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • measurement: especifica la matriz de métricas de netstat que se recopilarán. Los posibles valores son tcp_close, tcp_close_wait, tcp_closing, tcp_established, tcp_fin_wait1, tcp_fin_wait2, tcp_last_ack, tcp_listen, tcp_none, tcp_syn_sent, tcp_syn_recv, tcp_time_wait y udp_socket. Este campo es obligatorio si incluye netstat.

      Para ver las unidades predeterminadas de cada métrica de netstat, consulte Métricas que el agente de CloudWatch recopila en instancias de Linux y de macOS.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de estado de red, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información acerca de las métricas de alta resolución, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Las dimensiones adicionales que se utilizarán únicamente para las métricas de estado de red. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions que se utiliza para todos los tipos de métricas recopiladas por el agente.

  • processes: opcional. Especifica qué métricas de proceso se recopilarán. Esta sección solo es válida para las instancias de Linux. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • measurement: especifica la matriz de métricas de procesos que se recopilarán. Los posibles valores son blocked, dead, idle, paging, running, sleeping, stopped, total, total_threads, wait y zombies. Este campo es obligatorio si incluye processes.

      Para todas las métricas de processes, la unidad predeterminada es None.

      En la entrada de cada métrica individual, puede especificar, si lo desea, uno o los dos valores siguientes:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de proceso, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

      Este valor se especifica en segundos. Por ejemplo, indicar 10 hace que las métricas se deben recopilar cada 10 segundos y establecerlo en 300 especifica que las métricas se deben recopilar cada 5 minutos.

      Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información, consulte Métricas de alta resolución.

    • append_dimensions: opcional. Las dimensiones adicionales que se utilizarán únicamente para las métricas de proceso. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions que se utiliza para todos los tipos de métricas recopiladas por el agente.

  • nvidia_gpu: opcional. Especifica que se recopilarán las métricas de GPU NVIDIA. Esta sección es válida solo para instancias Linux en hosts configurados con un acelerador de GPU NVIDIA y que tienen instalada la interfaz de administración del sistema NVIDIA (nvidia-smi).

    Las métricas de GPU NVIDIA que se recopilan llevan como prefijo la cadena nvidia_smi_ para distinguirlas de las métricas recopiladas para otros tipos de aceleradores. Esta sección puede incluir los siguientes campos.

    • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

    • measurement: especifica la matriz de métricas de GPU NVIDIA que se recopilarán. Para ver una lista de los valores posibles que se utilizarán aquí, consulte la columna Metric (Métrica) de la tabla de Recopilación de métricas de GPU NVIDIA.

      En la entrada de cada métrica, puede especificar, si así lo desea, uno de los valores siguientes o ambos:

      • rename: especifica un nombre diferente para esta métrica.

      • unit: especifica la unidad que se usará para esta métrica, lo que anula la unidad predeterminada de None para la métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

    • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de GPU NVIDIA, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

  • jmx: opcional. Indica que desea recuperar métricas de Java Management Extensions (JMX) de la instancia. Para obtener más información acerca de los parámetros que puede utilizar en esta sección y las métricas que puede recopilar, consulte Recopilación de las métricas de Java Management Extensions (JMX).

  • otlp: opcional. Especifica que desea recopilar métricas del SDK de OpenTelemetry. Para obtener más información sobre los campos que puede utilizar en esta sección, consulte Recopilación de métricas y seguimientos con OpenTelemetry.

  • procstat: Opcional. Especifica que desea recuperar las métricas de procesos individuales. Para obtener más información sobre las opciones de configuración disponibles para procstat, consulte Recopilación de las métricas de procesos con el complemento procstat.

  • statsd: opcional. Indica que desea recuperar métricas personalizadas mediante el protocolo StatsD. El agente de CloudWatch actúa como un daemon para el protocolo. Puede usar cualquier cliente StatsD estándar para enviar las métricas al agente de CloudWatch. Para obtener más información sobre las opciones de configuración disponibles para StatsD, consulte Recuperación de las métricas personalizadas con StatsD.

  • ethtool: opcional. Indica que desea recuperar métricas personalizadas de red mediante el complemento ethtool. Este complemento puede importar tanto las métricas que recopila la herramienta estándar ethtool, como también las métricas de rendimiento de red de instancias de Amazon EC2. Para obtener más información sobre las opciones de configuración disponibles para ethtool, consulte Recopilación de las métricas de rendimiento de la red.

A continuación, se ofrece un ejemplo de una sección metrics de un servidor Linux. En este ejemplo, se recopilan tres métricas de CPU, tres métricas de estado de red, tres métricas de proceso y una métrica de disco, y se configura el agente para recibir métricas adicionales desde un cliente de collectd.

"metrics": { "aggregation_dimensions" : [["AutoScalingGroupName"], ["InstanceId", "InstanceType"],[]], "metrics_collected": { "collectd": {}, "cpu": { "resources": [ "*" ], "measurement": [ {"name": "cpu_usage_idle", "rename": "CPU_USAGE_IDLE", "unit": "Percent"}, {"name": "cpu_usage_nice", "unit": "Percent"}, "cpu_usage_guest" ], "totalcpu": false, "drop_original_metrics": [ "cpu_usage_guest" ], "metrics_collection_interval": 10, "append_dimensions": { "test": "test1", "date": "2017-10-01" } }, "netstat": { "measurement": [ "tcp_established", "tcp_syn_sent", "tcp_close" ], "metrics_collection_interval": 60 }, "disk": { "measurement": [ "used_percent" ], "resources": [ "*" ], "drop_device": true }, "processes": { "measurement": [ "running", "sleeping", "dead" ] } }, "append_dimensions": { "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}", "AutoScalingGroupName": "${aws:AutoScalingGroupName}" } }

Windows Server

En la sección metrics_collected de Windows Server, puede tener subsecciones para cada objeto de rendimiento de Windows, como Memory, Processor y LogicalDisk. Para obtener información sobre qué objetos y contadores están disponibles, consulte Contadores de rendimiento en la documentación de Microsoft Windows.

En la subsección de cada uno de los objetos, especifique una matriz measurement de los contadores que se recopilarán. La matriz measurement es obligatoria para cada objeto que especifique en el archivo de configuración. También puede especificar un campo resources para asignar un nombre a las instancias de las que se recopilarán métricas. También puede especificar * para resources para recopilar métricas independientes de cada instancia. Si omite resources para los contadores que tienen instancias, los datos de todas las instancias se agregan en un conjunto. Si omite resources para los contadores que no tienen instancias, el agente de CloudWatch no recopila los contadores. Para determinar si los contadores tienen instancias, pueden usar uno de los siguientes comandos.

Powershell:

Get-Counter -ListSet *

Línea de comandos (no Powershell):

TypePerf.exe –q

En cada sección de objetos, también puede especificar los siguientes campos opcionales:

  • metrics_collection_interval: opcional. Especifica la frecuencia con la que se recopilarán las métricas de este objeto, lo que anula el valor de metrics_collection_interval global especificado en la sección agent del archivo de configuración.

    Este valor se especifica en segundos. Por ejemplo, indicar 10 hace que las métricas se deben recopilar cada 10 segundos y establecerlo en 300 especifica que las métricas se deben recopilar cada 5 minutos.

    Si configura este valor por debajo de 60 segundos, cada métrica se recopila como una métrica de alta resolución. Para obtener más información, consulte Métricas de alta resolución.

  • append_dimensions: opcional. Especifica las dimensiones adicionales que se van a utilizar únicamente para las métricas de este objeto. Si especifica este campo, se usa además de las dimensiones especificadas en el campo append_dimensions global que se utiliza para todos los tipos de métricas recopiladas por el agente.

  • drop_original_metrics: opcional. Si utiliza el campo aggregation_dimensions de la sección metrics para agrupar las métricas en resultados agregados, de forma predeterminada, el agente envía tanto las métricas agregadas como las métricas originales, separadas para cada valor de la dimensión. Si no desea que las métricas originales se envíen a CloudWatch, puede especificar este parámetro con una lista de métricas. No se notifican a CloudWatch las métricas especificadas junto con este parámetro por dimensión. En su lugar, solo se registran las métricas agregadas. Esto reduce la cantidad de métricas que recopila el agente, lo que reduce los costes.

En cada sección de contadores, también puede especificar los siguientes campos opcionales:

  • rename: especifica un nombre diferente que se usará en CloudWatch para esta métrica.

  • unit: especifica la unidad que se usará para esta métrica. La unidad que especifique debe ser una unidad de métrica de CloudWatch válida, tal como se muestra en la descripción de Unit en MetricDatum.

Existen otras secciones opcionales que puede incluir en metrics_collected:

A continuación, se muestra una sección metrics de ejemplo para usarla en Windows Server. En este ejemplo, se recopilan muchas métricas de Windows y además se configura el equipo para que reciba métricas adicionales de un cliente de StatsD.

"metrics": { "metrics_collected": { "statsd": {}, "Processor": { "measurement": [ {"name": "% Idle Time", "rename": "CPU_IDLE", "unit": "Percent"}, "% Interrupt Time", "% User Time", "% Processor Time" ], "resources": [ "*" ], "append_dimensions": { "d1": "win_foo", "d2": "win_bar" } }, "LogicalDisk": { "measurement": [ {"name": "% Idle Time", "unit": "Percent"}, {"name": "% Disk Read Time", "rename": "DISK_READ"}, "% Disk Write Time" ], "resources": [ "*" ] }, "Memory": { "metrics_collection_interval": 5, "measurement": [ "Available Bytes", "Cache Faults/sec", "Page Faults/sec", "Pages/sec" ], "append_dimensions": { "d3": "win_bo" } }, "Network Interface": { "metrics_collection_interval": 5, "measurement": [ "Bytes Received/sec", "Bytes Sent/sec", "Packets Received/sec", "Packets Sent/sec" ], "resources": [ "*" ], "append_dimensions": { "d3": "win_bo" } }, "System": { "measurement": [ "Context Switches/sec", "System Calls/sec", "Processor Queue Length" ], "append_dimensions": { "d1": "win_foo", "d2": "win_bar" } } }, "append_dimensions": { "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}", "AutoScalingGroupName": "${aws:AutoScalingGroupName}" }, "aggregation_dimensions" : [["ImageId"], ["InstanceId", "InstanceType"], ["d1"],[]] } }

La sección logs incluye los siguientes campos:

  • service.name: opcional. Especifica el nombre del servicio que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

  • deployment.environment: opcional. Especifica el nombre del entorno que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

  • logs_collected: obligatorio si la sección logs está incluida. Especifica qué archivos de registros y registros de eventos de Windows se recopilarán del servidor. Puede incluir dos campos: files y windows_events.

    • files: especifica qué archivos de registro regulares va a recopilar el agente de CloudWatch. Contiene un campo, collect_list, que define estos archivos.

      • collect_list: obligatorio si files se incluye. Contiene una matriz de entradas, cada una de las cuales especifica un archivo de registro para recopilar. Cada una de estas entradas puede incluir los siguientes campos:

        • file_path: especifica la ruta del archivo de registro que se cargará en CloudWatch Logs. Se aceptan las reglas de concordancia glob de Unix estándar, como la adición de ** como un superasterisco. Por ejemplo, especificar /var/log/**.log provoca que se recopilen todos los archivos .log del árbol de directorio /var/log. Para obtener más ejemplos, consulte la biblioteca Glob.

          También puede usar el asterisco estándar como comodín estándar. Por ejemplo, /var/log/system.log* busca archivos coincidentes, como system.log_1111, system.log_2222, etc., en /var/log.

          Solo se envía el último archivo a CloudWatch Logs en función de la hora de modificación del archivo. Le recomendamos utilizar comodines para especificar una serie de archivos del mismo tipo, como access_log.2018-06-01-01 y access_log.2018-06-01-02, pero no varios tipos de archivos, como, por ejemplo, access_log_80 y access_log_443. Para especificar varios tipos de archivos, agregue otra entrada de flujo de registros al archivo de configuración del agente para que cada tipo de archivo de registro vaya a un flujo de registros distinto.

        • auto_removal: opcional. Si es true, el agente de CloudWatch elimina automáticamente este archivo de registro tras leerlo y lo ha rotado. Por lo general, los archivos de registro se eliminan después de cargar todo su contenido en Registros de CloudWatch, pero si el agente llega al EOF (final del archivo) y también detecta otro archivo de registro más reciente que coincide con la misma file_path, el archivo de registro se elimina aunque el agente no haya podido enviar todos los registros del archivo de registro anterior. Por lo tanto, debe asegurarse de haber terminado de escribir en el archivo ANTIGUO antes de crear el archivo NUEVO. La biblioteca de rastreo RUST tiene una incompatibilidad conocida porque podría crear un nuevo archivo de registro y, a continuación, seguir intentando escribir en el archivo de registro ANTIGUO.

          El agente solo quita archivos completos de los registros que crean varios archivos, como los registros que crean archivos distintos para cada fecha. Si un registro escribe continuamente en un solo archivo, no se elimina.

          Si ya dispone de un método de rotación o eliminación de archivos de registro, le recomendamos que omita este campo o que lo establezca en false.

          Si omite este campo, se usa el valor predeterminado de false.

        • log_group_name: opcional. Especifica qué se usará como nombre de grupo de registros en CloudWatch Logs.

          Le recomendamos que use este campo para especificar un nombre de grupo de registro para evitar confusiones. Si omite log_group_name, el valor de file_path hasta el punto final se usa como el nombre del grupo de registro. Por ejemplo, si la ruta de archivo es /tmp/TestLogFile.log.2017-07-11-14, el nombre de grupo de registros es /tmp/TestLogFile.log.

          Si especifica un nombre del grupo de registro, puede usar {instance_id}, {hostname}, {local_hostname} y {ip_address} como variables en el nombre. {hostname} recupera el nombre de host de los metadatos de EC2, mientras que {local_hostname} usa el nombre de host del archivo de configuración de red.

          Si usa estas variables para crear muchos grupos de registro diferentes, tenga en cuenta el límite de 1 000 000 grupos de registro por cuenta y región.

          Entre los caracteres permitidos se incluyen a-z, A-Z, 0-9, “_” (guion bajo), “-” (guion medio), “/” (barra diagonal) y “.” (punto).

        • log_group_class: opcional. Especifica qué clase de grupo de registros usar para el nuevo grupo de registros. Para obtener más información sobre las clases de grupos de registros, consulte Clases de registros.

          Los valores válidos son STANDARD y INFREQUENT_ACCESS. Si omite este campo, se usa el valor predeterminado de STANDARD.

          importante

          Después de crear un grupo de registro, la clase no se puede cambiar.

        • log_stream_name: opcional. Especifica qué se usará como nombre de flujo de registro en CloudWatch Logs. Como parte del nombre, puede usar {instance_id}, {hostname} {local_hostname} y {ip_address} como variables en el nombre. {hostname} recupera el nombre de host de los metadatos de EC2, mientras que {local_hostname} usa el nombre de host del archivo de configuración de red.

          Si omite este campo, se utilizará el valor del parámetro log_stream_name en la sección global logs. Si esto también se omite, se utiliza el valor predeterminado de {instance_id}.

          Si un flujo de registros no existe todavía, se crea automáticamente.

        • retention_in_days: Opcional. Especifica la cantidad de días que se conservan los eventos de registro en el grupo de registros especificado.

          • Si el agente está creando este grupo de registros y especifica u omite este campo, la retención del nuevo grupo de registro se establecerá de manera que nunca venza.

          • Si este grupo de registros ya existe y especifica este campo, se utiliza la nueva retención que especifique. Si omite este campo para un grupo de registros que ya existe, no se modifica la retención del grupo de registros.

            El asistente del agente de CloudWatch utiliza -1 como valor predeterminado para este campo cuando se utiliza para crear el archivo de configuración del agente y no se especifica un valor para la retención de registros. Este valor de -1 establecido por el asistente especifica que los eventos del grupo de registro no caducarán. Sin embargo, editar manualmente este valor a -1 no tiene ningún efecto.

          Los valores válidos son 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288 y 3653.

          Si configura el agente para que escriba varios flujos de registro en el mismo grupo de registros, especificar la retention_in_days en un solo lugar establecerá la retención de registros para todo el grupo de registros. Si especifica la retention_in_days para el mismo grupo de registros en varios lugares, la retención se establece si todos esos valores son iguales. Sin embargo, si se especifican diferentes valores de retention_in_days para el mismo grupo de registros en varios lugares, no se establecerá la retención de registros y el agente se detendrá, lo que devolverá un error.

          nota

          El rol o el usuario de IAM del agente deben tener la logs:PutRetentionPolicy para que puedan establecer políticas de retención. Para obtener más información, consulte Permitir que el agente de CloudWatch establezca la política de retención de registros.

          aviso

          Si establece la retention_in_days para un grupo de registros que ya existe, se eliminarán todos los registros de ese grupo de registros que se hayan publicado antes del número de días que especificó. Por ejemplo, si se configurara en 3, se eliminarían todos los registros de hace 3 días y más tiempo.

        • filters: opcional. Puede contener una matriz de entradas. Cada una de estas entradas especifica una expresión regular y un tipo de filtro para determinar si se van a publicar o dejar de lado entradas de registro que coincidan con el filtro. Si omite este campo, todos los registros del archivo de registro se publican en CloudWatch Logs. Si incluye este campo, el agente procesa cada mensaje de registro con todos los filtros que especifique y solo los eventos de registro que pasen todos los filtros se publicarán en CloudWatch Logs. Las entradas de registro que no pasen todos los filtros se mantendrán en el archivo de registro del host igualmente, pero no se enviarán a CloudWatch Logs.

          Cada entrada de la matriz de filtros puede incluir los siguientes campos:

          • type: indica el tipo de filtro. Los valores válidos son include y exclude. Con include, la entrada de registro debe coincidir con la expresión que se publicará en CloudWatch Logs. Con exclude, cada entrada de registro que coincida con el filtro no se enviará a CloudWatch Logs.

          • expression: se trata de una cadena de expresión regular que sigue la Sintaxis de RE2.

            nota

            El agente de CloudWatch no revisa el rendimiento de ninguna expresión regular que proporcione ni restringe el tiempo de ejecución de la evaluación de las expresiones regulares. Le recomendamos que tenga cuidado de no escribir una expresión que resulte costosa de evaluar. Para obtener más información acerca de los posibles problemas, consulte Regular expression Denial of Service - ReDoS (Denegación de servicio de expresión regular: ReDoS)

          Por ejemplo, el siguiente extracto del archivo de configuración del agente de CloudWatch publica registros que son solicitudes PUT y POST en CloudWatch Logs, pero excluye los registros procedentes de Firefox.

          "collect_list": [ { "file_path": "/opt/aws/amazon-cloudwatch-agent/logs/test.log", "log_group_name": "test.log", "log_stream_name": "test.log", "filters": [ { "type": "exclude", "expression": "Firefox" }, { "type": "include", "expression": "P(UT|OST)" } ] }, ..... ]
          nota

          El orden de los filtros en el archivo de configuración es importante en cuanto al rendimiento. En el ejemplo anterior, el agente deja de lado todos los registros que pasen el filtro de Firefox antes de empezar a evaluar el segundo filtro. Para que más de un filtro evalúe menos entradas de registro, aplique primero el filtro que espera que descarte más registros al archivo de configuración.

        • timezone: Opcional. Especifica la zona horaria que se debe utilizar a la hora de poner marcas temporales en eventos de registro. Los valores válidos son UTC y Local. El valor predeterminado es Local.

          Este parámetro se ignora si no especifica un valor para timestamp_format.

        • timestamp_format: opcional. Especifica el formato de marca temporal, con texto sin formato y símbolos especiales que empiezan por %. Si omite este campo, se usa la hora actual. Si utiliza este campo, puede utilizar los símbolos de la lista siguiente como parte del formato.

          nota

          Este parámetro no se tiene en cuenta si file_path está establecido como amazon-cloudwatch-agent.log

          Si una única entrada de registro contiene dos marcas temporales que coinciden con el formato, se utiliza la primera marca temporal.

          Esta lista de símbolos es diferente de la lista que utiliza el agente anterior de CloudWatch Logs. Para ver un resumen de estas diferencias, consulte Diferencias de marcas de tiempo entre el agente unificado de CloudWatch y el agente de CloudWatch Logs anterior.

          %y

          Año sin siglo como un número decimal rellenado con ceros. Por ejemplo, 19 para representar 2019.

          %Y

          Año con siglo como número decimal. Por ejemplo, 2019.

          %b

          Mes como el nombre abreviado de la configuración regional

          %B

          Mes como el nombre completo de la configuración regional

          %m

          mes como número decimal relleno con ceros

          %-m

          Mes como número decimal (sin rellenar con ceros)

          %d

          día del mes como número decimal relleno con ceros

          %-d

          Día del mes como número decimal (sin rellenar con ceros)

          %A

          Nombre completo de semana como, por ejemplo, Monday

          %a

          Abreviatura de día de la semana como, por ejemplo, Mon

          %H

          Hora (en un formato de 24 horas) como número decimal rellenado con ceros

          %I

          Hora (en un formato de 12 horas) como número decimal rellenado con ceros

          %-I

          Hora (en un formato de 12 horas) como número decimal (sin rellenar con ceros)

          %p

          AM o PM

          %M

          Minutos como número decimal rellenado con ceros

          %-M

          Minutos como número decimal (sin rellenar con ceros)

          %S

          Segundos como número decimal rellenado con ceros

          %-S

          Segundos como número decimal (sin rellenar con ceros)

          %f

          Segundos fraccionarios como un número decimal (1-9 dígitos), rellenado con ceros a la izquierda.

          %Z

          Zona horaria, por ejemplo PST

          %z

          Zona horaria, expresada como la diferencia entre la zona horaria local y UTC. Por ejemplo, -0700. Solo se admite este formato. Por ejemplo, -07:00 no es un formato válido.

        • multi_line_start_pattern: especifica el patrón para identificar el inicio de un mensaje de registro. Un mensaje de registro consta de una línea que coincide con el patrón y de líneas siguientes que no coinciden con el patrón.

          Si omite este campo, se deshabilita el modo multilínea y cualquier línea que comience con un carácter sin espacios en blanco cierra el mensaje de log anterior y comienza un nuevo mensaje de log.

          Si incluye este campo, puede especificar {timestamp_format} para usar la misma expresión regular que el formato de marca temporal. De lo contrario, se puede especificar otra expresión regular para que CloudWatch Logs la utilice para determinar las líneas iniciales de las entradas de líneas múltiples.

        • encoding: especifica la codificación del archivo de registro, de modo que se pueda leer correctamente. Si especifica una codificación incorrecta, podría haber pérdida de datos porque los caracteres que no se puedan descodificar se sustituirán por otros.

          El valor predeterminado es utf-8. Los valores posibles son los siguientes:

          ascii, big5, euc-jp, euc-kr, gbk, gb18030, ibm866, iso2022-jp, iso8859-2, iso8859-3, iso8859-4, iso8859-5, iso8859-6, iso8859-7, iso8859-8, iso8859-8-i, iso8859-10, iso8859-13, iso8859-14, iso8859-15, iso8859-16, koi8-r, koi8-u, macintosh, shift_jis, utf-8, utf-16, utf-16le, UTF-16, UTF-16LE, windows-874, windows-1250, windows-1251, windows-1252, windows-1253, windows-1254, windows-1255, windows-1256, windows-1257, windows-1258, x-mac-cyrillic

        • service.name: opcional. Especifica el nombre del servicio que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

        • deployment.environment: opcional. Especifica el nombre del entorno que se utilizará para rellenar la entidad y buscar la telemetría relacionada.

    • La sección windows_events especifica el tipo de eventos de Windows que se recopilan de los servidores con Windows Server. Contiene los campos siguientes:

      • collect_list: es obligatorio si windows_events está incluido. Especifica los tipos y niveles de eventos de Windows que se recopilarán. Cada log que se recopilará tiene una entrada en esta sección, que puede incluir los siguientes campos:

        • event_name: especifica el tipo de eventos de Windows que se van a registrar. Esto equivale al nombre del canal del registro de eventos de Windows (como System, Security, Application, etc.). Este campo es obligatorio para cada tipo de evento de Windows que se registrará.

          nota

          Cuando CloudWatch recupera mensajes de un canal de registro de Windows, busca el canal de registro en función de la propiedad Full Name. Mientras tanto, el panel de navegación del visor de eventos de Windows muestra la propiedad Log Name de los canales de registro. Full Name y Log Name no siempre coinciden. Para confirmar el Full Name de un canal, haga clic derecho en él en el visor de eventos de Windows y abra Properties (Propiedades).

        • event_levels: especifica los niveles de evento que se registrarán. Debe especificar cada nivel que se registrará. Entre los valores posibles se incluyen INFORMATION, WARNING, ERROR, CRITICAL y VERBOSE. Este campo es obligatorio para cada tipo de evento de Windows que se registrará.

        • log_group_name: obligatorio. Especifica qué se usará como nombre de grupo de registros en CloudWatch Logs.

        • log_stream_name: opcional. Especifica qué se usará como nombre de flujo de registro en CloudWatch Logs. Como parte del nombre, puede usar {instance_id}, {hostname} {local_hostname} y {ip_address} como variables en el nombre. {hostname} recupera el nombre de host de los metadatos de EC2, mientras que {local_hostname} usa el nombre de host del archivo de configuración de red.

          Si omite este campo, se utilizará el valor del parámetro log_stream_name en la sección global logs. Si esto también se omite, se utiliza el valor predeterminado de {instance_id}.

          Si un flujo de registros no existe todavía, se crea automáticamente.

        • event_format: Opcional. Especifica el formato que se debe utilizar al almacenar eventos de Windows en CloudWatch Logs. xml utiliza el formato XML como en el visor de eventos de Windows. text utiliza el formato de agente de CloudWatch Logs heredado.

        • retention_in_days: opcional. Especifica la cantidad de días que se conservan los eventos de Windows en el grupo de registro especificado.

          • Si el agente está creando este grupo de registros y especifica u omite este campo, la retención del nuevo grupo de registro se establecerá de manera que nunca venza.

          • Si este grupo de registros ya existe y especifica este campo, se utiliza la nueva retención que especifique. Si omite este campo para un grupo de registros que ya existe, no se modifica la retención del grupo de registros.

            El asistente del agente de CloudWatch utiliza -1 como valor predeterminado para este campo cuando se utiliza para crear el archivo de configuración del agente y no se especifica un valor para la retención de registros. Esta valor de -1 especificado por el asistente especifica que los eventos del grupo de registro no caducan. Sin embargo, editar manualmente este valor a -1 no tiene ningún efecto.

          Los valores válidos son 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288 y 3653.

          Si configura el agente para que escriba varios flujos de registro en el mismo grupo de registros, especificar la retention_in_days en un solo lugar establecerá la retención de registros para todo el grupo de registros. Si especifica la retention_in_days para el mismo grupo de registros en varios lugares, la retención se establece si todos esos valores son iguales. Sin embargo, si se especifican diferentes valores de retention_in_days para el mismo grupo de registros en varios lugares, no se establecerá la retención de registros y el agente se detendrá, lo que devolverá un error.

          nota

          El rol o el usuario de IAM del agente deben tener la logs:PutRetentionPolicy para que puedan establecer políticas de retención. Para obtener más información, consulte Permitir que el agente de CloudWatch establezca la política de retención de registros.

          aviso

          Si establece la retention_in_days para un grupo de registros que ya existe, se eliminarán todos los registros de ese grupo de registros que se hayan publicado antes del número de días que especificó. Por ejemplo, si se configurara en 3, se eliminarían todos los registros de hace 3 días y más tiempo.

  • log_stream_name: opcional. Especifica el nombre de secuencia de registros predeterminado que se usará para los registros o los eventos de Windows que no tengan nombres de secuencia de registros individuales definidos en el parámetro log_stream_name dentro de su entrada en collect_list.

  • endpoint_override: especifica un punto de enlace de FIPS o un enlace privado que se va a utilizar como punto de enlace donde el agente envía los registros. Al especificar este campo y establecer un enlace privado podrá enviar los registros a un punto de enlace de la Amazon VPC. Para obtener más información, consulte What Is Amazon VPC? (¿Qué es Amazon VPC?).

    El valor de endpoint_override debe ser una cadena que sea una URL.

    Por ejemplo, la siguiente parte de la sección de registros del archivo de configuración establece que el agente utilizará un punto de enlace de la VPC al enviar registros.

    { "logs": { "endpoint_override": "vpce-XXXXXXXXXXXXXXXXXXXXXXXXX.logs.us-east-1.vpce.amazonaws.com", ...... }, }
  • force_flush_interval: especifica en segundos la cantidad máxima de tiempo que los registros permanecen en el búfer de memoria antes de enviarse al servidor. Independientemente del valor de este campo, si el tamaño de los registros en el búfer alcanza 1 MB, los registros se envían inmediatamente al servidor. El valor predeterminado es 5.

    Si utiliza el agente para generar informes de métricas de alta resolución en un formato de métrica integrado y está configurando alarmas en esas métricas, mantenga este parámetro establecido en el valor predeterminado de 5. De lo contrario, las métricas se notifican con un retraso que puede provocar alarmas en los datos parciales o incompletos.

  • credentials: especifica un rol de IAM que se va a utilizar cuando se envían registros a una cuenta de AWS. Si se especifica, este campo contiene un parámetro, role_arn.

    • role_arn: especifica el ARN de un rol de IAM que se va a utilizar para la autenticación cuando se envían registros a una cuenta de AWS. Para obtener más información, consulte Envío de métricas, registros y seguimientos a una cuenta diferente. Si se especifica aquí, se sobrescribe el valor de role_arn especificado en la sección agent del archivo de configuración, si existe.

  • metrics_collected: este campo puede contener secciones para especificar que el agente debe recopilar los registros para habilitar casos de uso como CloudWatch Application Signals e Información de contenedores con una observabilidad mejorada en Amazon EKS.

    • application_signals: (opcional) especifica que desea habilitar CloudWatch Application Signals. Para obtener más información sobre esta configuración, consulte Habilitación de CloudWatch Application Signals.

    • kubernetes: este campo puede contener un parámetro enhanced_container_insights que puede utilizar para habilitar Información de contenedores con una observabilidad mejorada en Amazon EKS.

    • emf: para recopilar las métricas integradas en los registros, ya no es necesario añadir este campo emf. Este es un campo legal que especifica que el agente debe recopilar los registros que están en formato de métrica integradas. Puede generar datos de métricas a partir de estos registros. Para obtener más información, consulte Incrustar métricas en los registros.

    • otlp: opcional. Especifica que desea recopilar métricas del SDK de OpenTelemetry. Para obtener más información sobre los campos que puede utilizar en esta sección, consulte Recopilación de métricas y seguimientos con OpenTelemetry.

A continuación se muestra un ejemplo de una sección logs.

"logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log", "log_group_name": "amazon-cloudwatch-agent.log", "log_stream_name": "my_log_stream_name_1" }, { "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\test.log", "log_group_name": "test.log", "log_stream_name": "my_log_stream_name_2" } ] }, "windows_events": { "collect_list": [ { "event_name": "System", "event_levels": [ "INFORMATION", "ERROR" ], "log_group_name": "System", "log_stream_name": "System" }, { "event_name": "CustomizedName", "event_levels": [ "INFORMATION", "ERROR" ], "log_group_name": "CustomizedLogGroup", "log_stream_name": "CustomizedLogStream" } ] } }, "log_stream_name": "my_log_stream_name", "metrics_collected": { "kubernetes": { "enhanced_container_insights": true } } }

Al añadir una sección traces al archivo de configuración del agente de CloudWatch, se puede utilizar CloudWatch Application Signals o recopilar seguimientos desde X-Ray y el SDK de instrumentación de OpenTelemetry y se envían a X-Ray.

importante

El rol de IAM o usuario de IAM del agente debe tener la política AWSXrayWriteOnlyAccess para enviar datos de seguimiento a X-Ray. Para obtener más información, consulte Cree roles de IAM y usuarios para utilizarlos con el agente de CloudWatch.

Para empezar rápidamente a recopilar seguimientos, puede añadir lo siguiente al archivo de configuración del agente de CloudWatch.

"traces_collected": { "xray": { }, "otlp": { } }

Si añade la sección anterior al archivo de configuración del agente de CloudWatch y reinicia el agente, el agente empezará a recopilar seguimientos con las siguientes opciones y valores predeterminados. Para obtener más información sobre estos parámetros, consulte las definiciones de los parámetros más adelante en esta sección.

"traces_collected": { "xray": { "bind_address": "127.0.0.1:2000", "tcp_proxy": { "bind_address": "127.0.0.1:2000" } }, "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } }

La sección traces puede incluir los siguientes campos:

  • traces_collected: obligatorio si la sección traces está incluida. Especifica los SDK de los que se recopilarán los seguimientos. Puede incluir los siguientes campos:

    • application_signals: opcional. Especifica que desea habilitar CloudWatch Application Signals. Para obtener más información sobre esta configuración, consulte Habilitación de CloudWatch Application Signals.

    • xray: opcional. Especifica que desea recopilar seguimientos del SDK de X-Ray. Esta sección puede incluir los siguientes campos.

      • bind_address: opcional. Especifica la dirección UDP que el agente de CloudWatch debe usar para escuchar los seguimientos de X-Ray. El formato es ip:port. Esta dirección debe coincidir con la que se establece en el X-Ray.

        Si omite este campo, se usa el valor predeterminado de 127.0.0.1:2000.

      • tcp_proxy: opcional. Configura la dirección de un proxy que se utiliza para admitir el muestreo remoto de X-Ray. Para obtener más información, consulte Configuración de reglas de muestreo en la documentación de X-Ray.

        Esta sección puede contener el siguiente campo.

        • bind_address: opcional. Especifica la dirección TCP en la que el agente de CloudWatch debe establecer el proxy. El formato es ip:port. Esta dirección debe coincidir con la que se establece en el X-Ray.

          Si omite este campo, se usa el valor predeterminado de 127.0.0.1:2000.

    • otlp: opcional. Especifica que desea recopilar seguimientos del SDK de OpenTelemetry. Para obtener más información sobre los campos que puede utilizar en esta sección, consulte Recopilación de métricas y seguimientos con OpenTelemetry. Para obtener más información acerca de AWS Distro para OpenTelemetry, consulte AWS Distro for OpenTelemetry. Para obtener más información sobre los SDK de AWS Distro para OpenTelemetry, consulte la Introducción.

      Esta sección puede incluir los siguientes campos.

      • grpc_endpoint: opcional. Especifica la dirección que debe utilizar el agente de CloudWatch para escuchar los seguimientos de OpenTelemetry enviados mediante llamadas a procedimientos remotos de gRPC. El formato es ip:port. Esta dirección debe coincidir con la dirección establecida para el exportador de gRPC en el SDK de OpenTelemetry.

        Si omite este campo, se usa el valor predeterminado de 127.0.0.1:4317.

      • http_endpoint: opcional. Especifica la dirección que el agente CloudWatch debe utilizar para escuchar los seguimientos OTLP enviadas a través de HTTP. El formato es ip:port. Esta dirección debe coincidir con la dirección establecida para el exportador HTTP en el SDK de OpenTelemetry.

        Si omite este campo, se usa el valor predeterminado de 127.0.0.1:4318.

  • concurrency: opcional. Especifica el número máximo de llamadas simultáneas a X-Ray que se pueden utilizar para cargar seguimientos. El valor predeterminado es 8

  • local_mode: opcional. Si true, el agente no recopila los metadatos de la instancia de Amazon EC2. El valor predeterminado es false

  • endpoint_override: opcional. Especifica un punto de conexión FIPS o un vínculo privado que se va a utilizar como punto de conexión donde el agente envía seguimientos. Al especificar este campo y establecer un enlace privado podrá enviar los registros a un punto de conexión de VPC de Amazon. Para obtener más información, consulte ¿Qué es Amazon VPC

    El valor de endpoint_override debe ser una cadena que sea una URL.

  • region_override: opcional. Especifica la región que se debe utilizar para el punto de conexión de X-Ray. El agente de CloudWatch envía los seguimientos a X-Ray en la región especificada. Si omite este campo, el agente envía los seguimientos a la región donde se encuentra la instancia de Amazon EC2.

    Si especifica una región aquí, esta tendrá prioridad sobre la configuración del parámetro region en la sección agent del archivo de configuración.

  • proxy_override: opcional. Especifica la dirección del servidor proxy que utilizará el agente de CloudWatch al enviar solicitudes a X-Ray. El protocolo del servidor proxy debe especificarse como parte de esta dirección.

  • credentials: especifica un rol de IAM que se va a utilizar cuando se envían seguimientos a una cuenta de AWS. Si se especifica, este campo contiene un parámetro, role_arn.

    • role_arn: especifica el ARN de un rol de IAM que se va a utilizar para la autenticación cuando se envían seguimientos a una cuenta de AWS. Para obtener más información, consulte Envío de métricas, registros y seguimientos a una cuenta diferente. Si se especifica aquí, se sobrescribe el valor de role_arn especificado en la sección agent del archivo de configuración, si existe.

  • transit_spans_in_otlp_format: opcional. Si es true, envía los seguimientos a X-Ray en el formato de protocolo de OpenTelemetry, que admite eventos de unidades de seguimiento en Transaction Search. Para obtener más información, consulte Adición de atributos personalizados. El valor predeterminado es false.

A continuación se ofrece un ejemplo de un archivo de configuración completo del agente de CloudWatch de un servidor Linux.

Los elementos indicados en las secciones measurement para las métricas que desea recopilar pueden especificar el nombre completo de la métrica o simplemente la parte del nombre de la métrica que se añadirá al tipo de recurso. Por ejemplo, si especifica reads o diskio_reads en la sección measurement de la sección diskio, se recopilará la métrica diskio_reads.

En este ejemplo, se incluyen las dos formas de especificar métricas en la sección measurement.

{ "agent": { "metrics_collection_interval": 10, "logfile": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log" }, "metrics": { "namespace": "MyCustomNamespace", "metrics_collected": { "cpu": { "resources": [ "*" ], "measurement": [ {"name": "cpu_usage_idle", "rename": "CPU_USAGE_IDLE", "unit": "Percent"}, {"name": "cpu_usage_nice", "unit": "Percent"}, "cpu_usage_guest" ], "totalcpu": false, "metrics_collection_interval": 10, "append_dimensions": { "customized_dimension_key_1": "customized_dimension_value_1", "customized_dimension_key_2": "customized_dimension_value_2" } }, "disk": { "resources": [ "/", "/tmp" ], "measurement": [ {"name": "free", "rename": "DISK_FREE", "unit": "Gigabytes"}, "total", "used" ], "ignore_file_system_types": [ "sysfs", "devtmpfs" ], "metrics_collection_interval": 60, "append_dimensions": { "customized_dimension_key_3": "customized_dimension_value_3", "customized_dimension_key_4": "customized_dimension_value_4" } }, "diskio": { "resources": [ "*" ], "measurement": [ "reads", "writes", "read_time", "write_time", "io_time" ], "metrics_collection_interval": 60 }, "swap": { "measurement": [ "swap_used", "swap_free", "swap_used_percent" ] }, "mem": { "measurement": [ "mem_used", "mem_cached", "mem_total" ], "metrics_collection_interval": 1 }, "net": { "resources": [ "eth0" ], "measurement": [ "bytes_sent", "bytes_recv", "drop_in", "drop_out" ] }, "netstat": { "measurement": [ "tcp_established", "tcp_syn_sent", "tcp_close" ], "metrics_collection_interval": 60 }, "processes": { "measurement": [ "running", "sleeping", "dead" ] } }, "append_dimensions": { "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}", "AutoScalingGroupName": "${aws:AutoScalingGroupName}" }, "aggregation_dimensions" : [["ImageId"], ["InstanceId", "InstanceType"], ["d1"],[]], "force_flush_interval" : 30 }, "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log", "log_group_name": "amazon-cloudwatch-agent.log", "log_stream_name": "amazon-cloudwatch-agent.log", "timezone": "UTC" }, { "file_path": "/opt/aws/amazon-cloudwatch-agent/logs/test.log", "log_group_name": "test.log", "log_stream_name": "test.log", "timezone": "Local" } ] } }, "log_stream_name": "my_log_stream_name", "force_flush_interval" : 15, "metrics_collected": { "kubernetes": { "enhanced_container_insights": true } } } }

A continuación se ofrece un ejemplo de un archivo de configuración completo del agente de CloudWatch de un servidor con Windows Server.

{ "agent": { "metrics_collection_interval": 60, "logfile": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log" }, "metrics": { "namespace": "MyCustomNamespace", "metrics_collected": { "Processor": { "measurement": [ {"name": "% Idle Time", "rename": "CPU_IDLE", "unit": "Percent"}, "% Interrupt Time", "% User Time", "% Processor Time" ], "resources": [ "*" ], "append_dimensions": { "customized_dimension_key_1": "customized_dimension_value_1", "customized_dimension_key_2": "customized_dimension_value_2" } }, "LogicalDisk": { "measurement": [ {"name": "% Idle Time", "unit": "Percent"}, {"name": "% Disk Read Time", "rename": "DISK_READ"}, "% Disk Write Time" ], "resources": [ "*" ] }, "customizedObjectName": { "metrics_collection_interval": 60, "customizedCounterName": [ "metric1", "metric2" ], "resources": [ "customizedInstances" ] }, "Memory": { "metrics_collection_interval": 5, "measurement": [ "Available Bytes", "Cache Faults/sec", "Page Faults/sec", "Pages/sec" ] }, "Network Interface": { "metrics_collection_interval": 5, "measurement": [ "Bytes Received/sec", "Bytes Sent/sec", "Packets Received/sec", "Packets Sent/sec" ], "resources": [ "*" ], "append_dimensions": { "customized_dimension_key_3": "customized_dimension_value_3" } }, "System": { "measurement": [ "Context Switches/sec", "System Calls/sec", "Processor Queue Length" ] } }, "append_dimensions": { "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}", "AutoScalingGroupName": "${aws:AutoScalingGroupName}" }, "aggregation_dimensions" : [["ImageId"], ["InstanceId", "InstanceType"], ["d1"],[]] }, "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log", "log_group_name": "amazon-cloudwatch-agent.log", "timezone": "UTC" }, { "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\test.log", "log_group_name": "test.log", "timezone": "Local" } ] }, "windows_events": { "collect_list": [ { "event_name": "System", "event_levels": [ "INFORMATION", "ERROR" ], "log_group_name": "System", "log_stream_name": "System", "event_format": "xml" }, { "event_name": "CustomizedName", "event_levels": [ "WARNING", "ERROR" ], "log_group_name": "CustomizedLogGroup", "log_stream_name": "CustomizedLogStream", "event_format": "xml" } ] } }, "log_stream_name": "example_log_stream_name" } }

Guarde al archivo de configuración del agente de CloudWatch manualmente

Si se crea o se edita el archivo de configuración del agente de CloudWatch manualmente, se le puede asignar cualquier nombre. Después de crear el archivo, puede copiarlo en otros servidores en los que desee ejecutar el agente.

nota

Carga del archivo de configuración del agente de CloudWatch al almacén de parámetros de Systems Manager

Si se planea utilizar SSM Agent para instalar el agente de CloudWatch en los servidores, después de editar manualmente el archivo de configuración del agente de CloudWatch, se puede cargar en el almacén de parámetros de Systems Manager. Para ello, utilice el comando put-parameter de Systems Manager.

Para poder almacenar el archivo en el almacén de parámetros, debe utilizar un rol de IAM con los permisos suficientes. Para obtener más información, consulte Cree roles y usuarios de IAM para usarlos con el agente de CloudWatch.

Utilice el siguiente comando, donde nombre del parámetro es el nombre que se usará para este archivo en el almacén de parámetros y configuration_file_pathname es la ruta y el nombre del archivo de configuración que ha editado.

aws ssm put-parameter --name "parameter name" --type "String" --value file://configuration_file_pathname