Création ou édition manuelle du fichier de configuration d'agent CloudWatch
Le fichier de configuration de l’agent CloudWatch est un fichier JSON avec quatre sections : agent, metrics, logs et traces.
-
La section
agentinclut des champs pour la configuration générale de l'agent. -
La section
metricsindique des métriques personnalisées pour la collecte et la publication dans CloudWatch. Si vous utilisez l'agent uniquement pour collecter les journaux, vous pouvez omettre la sectionmetricsdu fichier. -
La section
logsspécifie les fichiers journaux qui sont publiés dans CloudWatch Logs. Ceci peut inclure des événements du journal des événements Windows si le serveur exécute Windows Server. -
La section
tracesindique les sources des traces collectées et envoyées à AWS X-Ray.
Cette section explique la structure et les champs du fichier de configuration de l’agent CloudWatch. Vous pouvez consulter la définition du schéma de ce fichier de configuration. La définition de schéma se trouve dans sur les serveurs Linux et dans installation-directory/doc/amazon-cloudwatch-agent-schema.json sur les serveurs exécutant Windows Server. installation-directory/amazon-cloudwatch-agent-schema.json
Si vous créez ou modifiez manuellement la configuration d'agent , vous pouvez lui donner n'importe quel nom. Pour faciliter les éventuels dépannages, nous vous recommandons de le nommer /opt/aws/amazon-cloudwatch-agent/etc/cloudwatch-agent.json sur un serveur Linux et $Env:ProgramData\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent.json sur les serveurs exécutant Windows Server. Vous pouvez ensuite copier ce fichier vers d'autres serveurs sur lesquels vous souhaitez installer l'agent une fois que vous avez créé le fichier.
Lorsque l’agent démarre, il crée automatiquement une copie de chaque fichier de configuration dans le répertoire /opt/aws/amazon-cloudwatch/etc/amazon-cloudwatch-agent.d, avec le nom du fichier préfixé de file_ (si la configuration provient d’un fichier local) ou ssm_ (si la configuration provient de Systems Manager), afin d’indiquer l’origine de la configuration.
Note
Les métriques, journaux et suivis collectés par l’agent CloudWatch entraînent des coûts. Pour plus d'informations sur la tarification, consultez Tarification Amazon CloudWatch
La section agent peut inclure les champs suivants. L'Assistant ne crée pas de section agent. Au lieu de cela, l'Assistant l'omet et il utilise les valeurs par défaut pour tous les champs de cette section.
-
metrics_collection_interval– Facultatif. Indique la fréquence à laquelle toutes les métriques spécifiées dans ce fichier de configuration doivent être collectées. Vous pouvez remplacer cette valeur pour des types spécifiques de métriques.Cette valeur est spécifiée en secondes. Par exemple, en spécifiant 10, les métriques sont collectées toutes les 10 secondes, et en le fixant à 300, les métriques sont collectées toutes les 5 minutes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour plus d'informations sur les métriques haute résolution, consultez Métriques haute résolution.
La valeur par défaut est 60.
-
region– Spécifie la région à utiliser pour le point de terminaison CloudWatch lorsqu'une instance Amazon EC2 est surveillée. Les métriques collectées sont envoyées à cette région, par exempleus-west-1. Si vous ne spécifiez pas ce champ, l'agent envoie les métriques à la région dans laquelle se trouve l'instance Amazon EC2.Si vous surveillez un serveur sur site, ce champ n'est pas utilisé et l'agent lit la région à partir du profil
AmazonCloudWatchAgentdu fichier de configuration AWS. -
credentials– Spécifie un rôle IAM à utiliser lors de l'envoi de métriques, de journaux et de traces à un compte AWS différent. S'il est spécifié, ce champ contient un paramètre,role_arn.-
role_arn– Spécifie l'Amazon Resource Name (ARN) d'un rôle IAM à utiliser pour l'authentification lors de l'envoi des métriques, des journaux et des traces à un compte AWS différent. Pour de plus amples informations, consultez Envoi de métriques, de journaux et de traces à un autre compte.
-
-
debug– Facultatif. Indique l'exécution de l'agent CloudWatch avec des messages de journal de débogage. La valeur par défaut estfalse. -
aws_sdk_log_level– Facultatif. Pris en charge uniquement dans la version 1.247350.0 et les versions ultérieures de l’agent CloudWatch.Vous pouvez spécifier ce champ pour que l'agent effectue la journalisation pour les points de terminaison du kit SDK AWS. La valeur de ce champ peut inclure une ou plusieurs des options suivantes. Séparez les différentes options avec le caractère
|.-
LogDebug -
LogDebugWithSigning -
LogDebugWithHTTPBody -
LogDebugRequestRetries -
LogDebugWithEventStreamBody
Pour de plus amples informations sur ces options, veuillez consulter LogLevelType.
-
-
logfile– Spécifie l'emplacement dans lequel l'agent CloudWatch écrit les messages de journaux. Si vous spécifiez une chaîne vide, le journal est acheminé vers stderr. Si vous ne spécifiez pas cette option, les emplacements par défaut sont les suivants :-
Linux :
/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log -
Windows Server :
c:\\ProgramData\\Amazon\\CloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log
L'agent CloudWatch opère automatiquement la rotation du fichier journal qu'il crée. Un fichier journal fait l'objet d'une rotation lorsqu'il atteint 100 Mo de taille. L'agent conserve pendant une durée de sept jours les fichiers journaux ayant fait l'objet d'une rotation et il peut conserver jusqu'à cinq fichiers journaux de sauvegarde qui ont fait l'objet d'une rotation. Les fichiers journaux sauvegardés disposent d'un horodatage ajouté à leur nom de fichier. L'horodatage indique la date et l'heure auxquelles le fichier a fait l'objet d'une rotation : par exemple,
amazon-cloudwatch-agent-2018-06-08T21-01-50.247.log.gz. -
-
omit_hostname– Facultatif. Par défaut, le nom d'hôte est publié sous la forme de la dimension des métriques qui sont collectées par l'agent, sauf si vous utilisez le champappend_dimensionsdans la sectionmetrics. Définissezomit_hostnamesurtruepour éviter que le nom d'hôte soit publié en tant que dimension même si vous n'utilisez pasappend_dimensions. La valeur par défaut estfalse. -
run_as_user– Facultatif. Spécifie l'utilisateur à utiliser pour exécuter l'agent CloudWatch. Si vous ne spécifiez pas ce paramètre, l'utilisateur racine est utilisé. Cette option est valide uniquement sur les serveurs Linux.Si vous spécifiez cette option, l'utilisateur doit exister avant que vous ne démarriez l'agent CloudWatch. Pour de plus amples informations, consultez Exécution de l'agent CloudWatch sous l'identité d'un autre utilisateur.
-
user_agent– Facultatif. Spécifie la chaîneuser-agentqui est utilisée par l'agent CloudWatch lorsqu'il effectue des appels d'API vers le backend CloudWatch. La valeur par défaut est une chaîne composée de la version de l'agent, de la version du langage de programmation Go utilisé pour compiler l'agent, du système d'exploitation et de l'architecture d'exécution, du temps de génération et des plug-ins activés. -
usage_data: facultatif. Par défaut, l'agent CloudWatch envoie des données de santé et de performance le concernant à CloudWatch chaque fois qu'il publie des métriques ou des journaux sur CloudWatch. Ces données ne vous coûtent rien. Vous pouvez empêcher l'agent d'envoyer ces données en spécifiantfalsepourusage_data. Si vous omettez ce paramètre, la valeur par défauttrueest utilisée et l'agent envoie des données de santé et de performance.Si vous définissez cette valeur sur
false, vous devez arrêter et redémarrer l'agent pour qu'elle prenne effet. -
service.name: facultatif. Spécifie le nom du service à utiliser pour renseigner l’entité afin de trouver la télémétrie associée. -
deployment.environment: facultatif. Spécifie le nom de l’environnement à utiliser pour renseigner l’entité afin de trouver la télémétrie associée.
Voici un exemple de valeur pour une section 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" }
Champs communs à Linux et Windows
Sur les serveurs exécutant Linux ou Windows Server, la section metrics comprend les champs suivants :
-
namespace– Facultatif. Espace de noms à utiliser pour les métriques collectées par l'agent. La valeur par défaut estCWAgent. La longueur maximale est de 255 caractères. Voici un exemple :{ "metrics": { "namespace": "Development/Product1Metrics", ...... }, } -
append_dimensions– Facultatif. Ajoute des dimensions métriques Amazon EC2 à toutes les métriques collectées par l'agent. Cela provoque également l'agent de ne pas publier le nom d'hôte en tant que dimension.Les seules paires clé-valeur prises en charge pour
append_dimensionssont affichées dans la liste suivante. Toutes les autres paires clé-valeur sont ignorées. L'agent prend en charge ces paires clé-valeur exactement comme indiqué dans la liste suivante. Vous ne pouvez pas modifier les valeurs clés pour publier des noms de dimension différents pour celles-ci.-
"ImageId":"${aws:ImageId}"définit l'ID d'AMI de l'instance comme valeur de la dimensionImageId. -
"InstanceId":"${aws:InstanceId}"définit l'ID d'instance de l'instance comme valeur de la dimensionInstanceId. -
"InstanceType":"${aws:InstanceType}"définit le type d'instance de l'instance comme valeur de la dimensionInstanceType. -
"AutoScalingGroupName":"${aws:AutoScalingGroupName}"définit le nom du groupe Auto Scaling de l'instance comme valeur de la dimensionAutoScalingGroupName.
Si vous souhaitez ajouter des dimensions aux métriques avec des paires clé-valeur arbitraires, utilisez le paramètre
append_dimensionsdans le champ pour ce type de métrique particulier.Si vous spécifiez une valeur qui dépend des métadonnées Amazon EC2 et que vous utilisez des proxys, vous devez vous assurer que le serveur peut accéder au point de terminaison pour Amazon EC2. Pour plus d'informations sur ces points de terminaison, consultez la rubrique Amazon Elastic Compute Cloud (Amazon EC2) du document Référence générale d'Amazon Web Services.
-
-
aggregation_dimensions– Facultatif. Spécifie les dimensions sur lesquelles les métriques collectées vont être regroupées. Par exemple, si vous regroupez les métriques sur la dimensionAutoScalingGroupName, les métriques de toutes les instances dans chaque groupe Auto Scaling sont regroupées et peuvent être affichées dans leur ensemble.Vous pouvez regrouper des métriques sur une ou plusieurs dimensions. Par exemple, spécifier
[["InstanceId"], ["InstanceType"], ["InstanceId","InstanceType"]]regroupe les métriques pour l'ID d'instance individuellement, le type d'instance individuellement et pour la combinaison des deux dimensions.Vous pouvez également spécifier
[]pour regrouper toutes les métriques dans une collection, indépendamment de toutes les dimensions. -
endpoint_override– Spécifie un point de terminaison FIPS ou un lien privé à utiliser en tant que point de terminaison auquel l'agent envoie les métriques. Cette spécification et la définition d'un lien privé vous permettent d'envoyer les métriques à un point de terminaison Amazon VPC. Pour de plus amples informations, consultez Qu'est-ce qu'Amazon VPC ?.La valeur de
endpoint_overridedoit être une chaîne qui est une URL.Par exemple, la partie suivante de la section Métriques du fichier de configuration définit l'agent pour qu'il utilise un point de terminaison d'un VPC lors de l'envoi de métriques.
{ "metrics": { "endpoint_override": "vpce-XXXXXXXXXXXXXXXXXXXXXXXXX.monitoring.us-east-1.vpce.amazonaws.com", ...... }, } -
metrics_collected– Obligatoire Spécifie les métriques qui doivent être collectées, y compris les métriques personnalisées collectées viaStatsDoucollectd. Cette section inclut plusieurs sous-sections.Le contenu de la section
metrics_collectedvarie selon que ce fichier de configuration est pour un serveur exécutant Linux ou Windows Server. -
metrics_destinations: facultatif. Spécifie une ou plusieurs destinations pour toutes les métriques définies dansmetrics_collected. Si spécifié ici, il remplace la destination par défaut decloudwatch.-
cloudwatch: Amazon CloudWatch. -
amp: Amazon Managed Service pour Prometheus.-
workspace_id: l’ID correspondant à l’espace de travail Amazon Managed Service pour Prometheus.
-
{ "metrics": { "metrics_destinations": { "cloudwatch": {}, "amp": { "workspace_id": "ws-abcd1234-ef56-7890-ab12-example" } } } } -
-
force_flush_interval– Spécifie en secondes la durée maximale pendant laquelle les métriques demeurent dans la mémoire tampon avant d'être envoyées au serveur. Quelle que soit la configuration, si la taille des métriques dans la mémoire tampon atteint 1 Mo ou le nombre de 1000 différentes métriques, les métriques sont immédiatement envoyées au serveur.La valeur par défaut est 60.
-
credentials– Spécifie un rôle IAM à utiliser lors de l'envoi de métriques à un compte différent. S'il est spécifié, ce champ contient un paramètre,role_arn.-
role_arn– Spécifie l'ARN d'un rôle IAM à utiliser pour l'authentification lors de l'envoi de métriques à un compte différent. Pour de plus amples informations, consultez Envoi de métriques, de journaux et de traces à un autre compte. Si elle est spécifiée ici, cette valeur remplace lerole_arnspécifié dans la sectionagentdu fichier de configuration, le cas échéant. -
service.name: facultatif. Spécifie le nom du service à utiliser pour renseigner l’entité afin de trouver la télémétrie associée. -
deployment.environment: facultatif. Spécifie le nom de l’environnement à utiliser pour renseigner l’entité afin de trouver la télémétrie associée.
-
Section Linux
Sur les serveurs exécutant Linux, la section metrics_collected du fichier de configuration peut également contenir les champs suivants.
La plupart de ces champs peuvent inclure des sections measurement qui répertorient les métriques que vous souhaitez collecter pour cette ressource. Ces sections measurement peuvent spécifier soit le nom complet de la métrique, par exemple swap_used, soit uniquement la partie du nom de la métrique qui sera ajoutée au type de ressource. Par exemple, la spécification de reads dans la section measurement de la section diskio entraîne la collecte de la métrique diskio_reads.
-
collectd– Facultatif. Spécifie que vous souhaitez récupérer les métriques personnalisées à l'aide du protocolecollectd. Vous utilisez le logicielcollectdpour envoyer les métriques à l'agent CloudWatch. Pour plus d'informations sur les options de configuration de collectd, consultez Récupération de métriques personnalisées avec collectd. -
cpu– Facultatif. Indique que des métriques d'UC doivent être collectées. Cette section est valable uniquement pour les instances Linux. Vous devez inclure au moins un des champstotalcpuetresourcespour toutes les métriques d'UC à collecter. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
resources: facultatif. Spécifiez ce champ avec la valeur*pour déclencher la collecte des métriques par uc. La seule valeur autorisée est*. -
totalcpu– Facultatif. Indique s'il est nécessaire de signaler les métriques agrégées entre tous les cœurs de cpu. Par défaut, la valeur est true. -
measurement– Spécifie l'éventail de métriques d'UC à collecter. Les valeurs possibles sonttime_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_systemetusage_user. Ce champ est obligatoire si vous incluezcpu.Par défaut, l'unité pour les métriques
cpu_usage_*estPercentet les métriquescpu_time_*n'ont pas d'unité.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques cpu, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes. Par exemple, en spécifiant 10, les métriques sont collectées toutes les 10 secondes, et en le fixant à 300, les métriques sont collectées toutes les 5 minutes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour plus d'informations sur les métriques haute résolution, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Autres dimensions à utiliser pour seulement les métriques cpu. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsglobal qui est utilisé pour tous les types de métriques collectées par l'agent.
-
-
disk– Facultatif. Indique les métriques de disque qui doivent être collectées. Collecte les métriques uniquement pour les volumes montés. Cette section est valable uniquement pour les instances Linux. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
resources– Facultatif. Spécifie un ensemble de points de montage de disque. Ce champ limite CloudWatch à la collecte des métriques des seuls points de montage répertoriés. Vous pouvez spécifier*comme valeur pour la collecter des métriques de tous les points de montage. La valeur par défaut consiste à collecter les métriques de tous points de montage. -
measurement– Spécifie l'éventail de métriques de disque à collecter. Les valeurs possibles sont :free,total,used,used_percent,inodes_free,inodes_usedetinodes_total. Ce champ est obligatoire si vous incluezdisk.Note
Les métriques
diskont une dimension pourPartition, ce qui signifie que le nombre de métriques personnalisées générées dépend du nombre de partitions associées à votre instance. Le nombre de partitions de disque dont vous disposez dépend de l'AMI que vous utilisez et du nombre de volumes Amazon EBS que vous attachez au serveur.Pour voir les unités par défaut de chaque métrique
disk, consultez Métriques collectées par l'agent CloudWatch sur les instances Linux et macOS.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonedeNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
ignore_file_system_types– Spécifie les types de systèmes de fichiers à exclure lors de la collecte des métriques de disque. Les valeurs valides sontsysfs,devtmpfset ainsi de suite. -
drop_device– Si vous définissez ce paramètre surtrue,Devicen'est pas inclus comme dimension pour les métriques de disque.Empêcher
Deviced'être utilisé comme dimension peut être utile sur les instances qui font appel au système Nitro, car sur ces instances, les noms d'appareil changent pour chaque montage de disque lors du redémarrage de l'instance. Cela peut entraîner des données incohérentes dans vos métriques et faire en sorte que les alertes basées sur ces métriques passent à l'étatINSUFFICIENT DATA.La valeur par défaut est
false. -
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques disque, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour de plus amples informations, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Permet de spécifier les paires clé-valeur à utiliser comme dimensions supplémentaires uniquement pour les métriques de disque. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsqui est utilisé pour tous les types de métriques collectées par l'agent.Voici une paire clé-valeur que vous pouvez utiliser. Vous pouvez également spécifier d’autres paires clé-valeur personnalisées.
-
"VolumeId":"${aws:VolumeId}"ajoute une dimensionVolumeIdaux métriques de disque de votre périphérique de stockage en mode bloc. Pour les volumes Amazon EBS, cette valeur correspond à l’ID du volume Amazon EBS. Pour le stockage d’instances EC2, cette valeur correspond au numéro de série du périphérique. Pour l’utiliser, le paramètredrop_devicedoit être défini surfalse.
-
-
-
diskio– Facultatif. Spécifie les métriques disque i/o qui doivent être collectées. Cette section est valable uniquement pour les instances Linux. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
resources– Facultatif. Si vous spécifiez un tableau d'appareils, CloudWatch collecte les métriques de ces seuls appareils. Dans le cas contraire, les métriques de tous les appareils sont collectées. Vous pouvez aussi spécifier * comme valeur pour la collecter des métriques de tous les appareils. -
measurement: indique le tableau de métriques de pilotes diskio et AWS NVMe à collecter pour les volumes Amazon EBS et les volumes de stockage d’instances attachés aux instances Amazon EC2. Les valeurs possibles sont :reads,writes,read_bytes,write_bytes,read_time,write_time,io_timeetiops_in_progress. Pour la liste des métriques du pilote NVMe pour les volumes Amazon EBS et les volumes de stockage d’instances Amazon EC2, consultez Collecte des métriques du pilote NVMe pour Amazon EBS et Collecte des métriques du pilote NVMe pour les volumes de stockage d’instances Amazon EC2. Ce champ est obligatoire si vous incluezdiskio.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonedeNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
Pour plus d’informations sur les unités par défaut et la description des métriques, consultez Collecte des métriques du pilote NVMe pour Amazon EBS .
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques diskio, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour plus d'informations sur les métriques haute résolution, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Autres dimensions à utiliser pour seulement les métriques diskio. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsqui est utilisé pour tous les types de métriques collectées par l'agent.
-
-
swap– Facultatif. Indique que les métriques de mémoire swap doivent être collectées. Cette section est valable uniquement pour les instances Linux. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
measurement– Spécifie l'éventail de métriques de swap à collecter. Les valeurs possibles sontfree,usedetused_percent. Ce champ est obligatoire si vous incluezswap.Pour voir les unités par défaut de chaque métrique
swap, consultez Métriques collectées par l'agent CloudWatch sur les instances Linux et macOS.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonedeNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques swap, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour plus d'informations sur les métriques haute résolution, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Autres dimensions à utiliser pour seulement les métriques swap. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsglobal qui est utilisé pour tous les types de métriques collectées par l'agent. Elle est collectée sous la forme d'une métrique haute résolution.
-
-
mem– Facultatif. Indique que les métriques de mémoire doivent être collectées. Cette section est valable uniquement pour les instances Linux. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
measurement– Spécifie l'éventail de métriques de mémoire à collecter. Les valeurs possibles sont :active,available,available_percent,buffered,cached,free,inactive,total,usedetused_percent. Ce champ est obligatoire si vous incluezmem.Pour voir les unités par défaut de chaque métrique
mem, consultez Métriques collectées par l'agent CloudWatch sur les instances Linux et macOS.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques mem, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour plus d'informations sur les métriques haute résolution, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Autres dimensions à utiliser pour seulement les métriques mem. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsglobal qui est utilisé pour tous les types de métriques collectées par l'agent.
-
-
net– Facultatif. Indique que les métriques networking doivent être collectées. Cette section est valable uniquement pour les instances Linux. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
resources– Facultatif. Si vous spécifiez un tableau des Interfaces réseau, CloudWatch collecte les métriques de ces seules interfaces. Dans le cas contraire, les métriques de tous les appareils sont collectées. Vous pouvez aussi spécifier*comme valeur pour collecter des métriques de toutes les interfaces. -
measurement– Spécifie l'éventail de métriques de réseautage à collecter. Les valeurs possibles sont :bytes_sent,bytes_recv,drop_in,drop_out,err_in,err_out,packets_sentetpackets_recv. Ce champ est obligatoire si vous inclueznet.Pour voir les unités par défaut de chaque métrique
net, consultez Métriques collectées par l'agent CloudWatch sur les instances Linux et macOS.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques net, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes. Par exemple, en spécifiant 10, les métriques sont collectées toutes les 10 secondes, et en le fixant à 300, les métriques sont collectées toutes les 5 minutes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour plus d'informations sur les métriques haute résolution, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Autres dimensions à utiliser pour seulement les métriques net. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsqui est utilisé pour tous les types de métriques collectées par l'agent.
-
-
netstat– Facultatif. Indique que l'état de connexion TCP et les métriques de connexion UDP doivent être collectés. Cette section est valable uniquement pour les instances Linux. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
measurement– Spécifie l'éventail de métriques netstat à collecter. Les valeurs possibles sonttcp_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_waitetudp_socket. Ce champ est obligatoire si vous inclueznetstat.Pour voir les unités par défaut de chaque métrique
netstat, consultez Métriques collectées par l'agent CloudWatch sur les instances Linux et macOS.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques netstat, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour plus d'informations sur les métriques haute résolution, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Autres dimensions à utiliser pour seulement les métriques netstat. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsqui est utilisé pour tous les types de métriques collectées par l'agent.
-
-
processes– Facultatif. Indique que les métriques processes doivent être collectées. Cette section est valable uniquement pour les instances Linux. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
measurement– Spécifie l'éventail de métriques de processus à collecter. Les valeurs possibles sont :blocked,dead,idle,paging,running,sleeping,stopped,total,total_threads,waitetzombies. Ce champ est obligatoire si vous incluezprocesses.Pour toutes les métriques
processes, l'unité par défaut estNone.Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques processes, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes. Par exemple, en spécifiant 10, les métriques sont collectées toutes les 10 secondes, et en le fixant à 300, les métriques sont collectées toutes les 5 minutes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour de plus amples informations, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Autres dimensions à utiliser pour seulement les métriques process. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsqui est utilisé pour tous les types de métriques collectées par l'agent.
-
-
nvidia_gpu– Facultatif. Indique les métriques GPU NVIDIA qui doivent être collectées. Cette section est valable uniquement pour les instances Linux sur des hôtes configurés avec un accélérateur GPU NVIDIA et sur lesquelles l'interface de gestion du système NVIDIA (nvidia-smi) est installée.Les métriques GPU NVIDIA collectées sont préfixées avec la chaîne
nvidia_smi_pour les distinguer des métriques collectées pour d'autres types d'accélérateurs. Cette section peut inclure les champs suivants :-
drop_original_metrics– Facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts. -
measurement– Spécifie l'éventail de métriques GPU NVIDIA à collecter. Pour obtenir une liste des valeurs possibles à utiliser ici, consultez la colonne Metric (Métrique) du tableau dans Collecter des métriques GPU NVIDIA .Dans l'entrée de chaque métrique, vous pouvez, si vous le souhaitez, spécifier l'une des valeurs suivantes :
-
rename– Spécifie un nom différent pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique, en remplaçant l'unité par défaut deNonepour la métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
-
-
metrics_collection_interval– Facultatif. Indique la fréquence de collecte des métriques GPU NVIDIA, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.
-
-
jmx: facultatif. Indique que vous souhaitez extraire les métriques Java Management Extensions (JMX) à partir de l’instance. Pour plus d’informations sur les paramètres que vous pouvez utiliser dans cette section et les métriques que vous pouvez collecter, consultez Collecte des métriques Java Management Extensions (JMX). -
otlp: facultatif. Indique que vous souhaitez collecter des métriques à partir du kit SDK OpenTelemetry. Pour plus d’informations sur les champs que vous pouvez utiliser dans cette section, consultez Collecte de métriques et de suivis avec OpenTelemetry. -
procstat: facultatif. Spécifie que vous souhaitez récupérer les métriques auprès de processus individuels. Pour plus d'informations sur les options de configuration de procstat, consultez Collecter des métriques de processus avec le plugin procstat. -
statsd– Facultatif. Spécifie que vous souhaitez récupérer les métriques personnalisées à l'aide du protocoleStatsD. L'agent CloudWatch agit comme un démon pour le protocole. Vous utilisez n'importe quel clientStatsDstandard pour envoyer les métriques à l'agent CloudWatch. Pour plus d'informations sur les options de configuration de StatsD, consultez Récupération de métriques personnalisées avec StatsD. -
ethtool– Facultatif. Spécifie que vous souhaitez récupérer les métriques réseau à l'aide du pluginethtool. Ce plugin peut importer à la fois les métriques collectées par l'utilitaire ethtool standard, ainsi que les mesures de performances réseau des instances Amazon EC2. Pour plus d'informations sur les options de configuration de ethtool, consultez Récupérez des métriques des performances réseau.
L'exemple suivant illustre une section metrics pour un serveur Linux. Dans cet exemple, trois métriques d'UC, trois métriques netstat, trois métriques de processus et une métrique de disque sont collectées, et l'agent est configuré pour recevoir des métriques supplémentaires de la part d'un client 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
Dans la section metrics_collected pour Windows Server, vous pouvez avoir des sous-sections pour chaque objet de performance Windows, par exemple Memory, Processor et LogicalDisk. Pour plus d'informations sur les objets et les compteurs disponibles, consultez la rubrique Compteurs de performances
Dans la sous-section de chaque objet, vous spécifiez un tableau measurement des compteurs à collecter. Le tableau measurement est requis pour chaque objet que vous spécifiez dans le fichier de configuration. Vous pouvez également spécifier un champ resources pour nommer les instances à partir desquelles collecter les métriques. Vous pouvez également spécifier * pour resources, afin de collecter des métriques distinctes pour chaque instance. Si vous omettez resources pour les compteurs qui ont des instances, les données de toutes les instances sont regroupées dans un ensemble. Si vous omettez resources pour les compteurs qui n'ont pas d'instances, les compteurs ne sont pas collectés par l'agent CloudWatch. Pour déterminer si des compteurs disposent d'instances, vous pouvez utiliser l'une des commandes suivantes.
PowerShell :
Get-Counter -ListSet *
Ligne de commande (non Powershell) :
TypePerf.exe –q
Dans chaque section d'objet, vous pouvez également spécifier les champs facultatifs suivants :
-
metrics_collection_interval: facultatif. Indique la fréquence de collecte des métriques de cet objet, en remplaçant la valeurmetrics_collection_intervalglobale spécifiée dans la sectionagentdu fichier de configuration.Cette valeur est spécifiée en secondes. Par exemple, en spécifiant 10, les métriques sont collectées toutes les 10 secondes, et en le fixant à 300, les métriques sont collectées toutes les 5 minutes.
Si vous définissez une valeur inférieure à 60 secondes, chaque métrique est collectée sous la forme d'une métrique haute résolution. Pour de plus amples informations, consultez Métriques haute résolution.
-
append_dimensions– Facultatif. Spécifie d'autres dimensions à utiliser uniquement pour les métriques de cet objet. Si vous spécifiez ce champ, il est utilisé en plus des dimensions spécifiées dans le champappend_dimensionsglobal qui est utilisé pour tous les types de métriques collectées par l'agent. -
drop_original_metrics: facultatif. Si vous utilisez le champaggregation_dimensionsde la sectionmetricspour regrouper les métriques dans des résultats agrégés, l'agent envoie par défaut les métriques agrégées et les métriques d'origine qui sont séparées pour chaque valeur de la dimension. Si vous ne souhaitez pas que les métriques d'origine soient envoyées à CloudWatch, vous pouvez spécifier ce paramètre avec une liste de métriques. Les métriques spécifiées avec ce paramètre n'ont pas leurs métriques par dimensions signalées à CloudWatch. Au lieu de cela, seules les métriques agrégées sont signalées. Cela réduit le nombre de métriques collectées par l'agent, ce qui réduit vos coûts.
Dans chaque section de compteur, vous pouvez également spécifier les champs facultatifs suivants :
-
rename– Spécifie un nom différent à utiliser dans CloudWatch pour cette métrique. -
unit– Spécifie l'unité à utiliser pour cette métrique. L'unité que vous indiquez doit être une unité de métrique CloudWatch valide, comme indiqué dans la descriptionUnitde MetricDatum.
Il existe également d’autres sections facultatives que vous pouvez inclure dans metrics_collected :
-
statsd– Vous permet de récupérer les métriques personnalisées à l'aide du protocoleStatsD. L'agent CloudWatch agit comme un démon pour le protocole. Vous utilisez n'importe quel clientStatsDstandard pour envoyer les métriques à l'agent CloudWatch. Pour de plus amples informations, consultez Récupération de métriques personnalisées avec StatsD. -
procstat– Vous permet de récupérer les métriques auprès de processus individuels. Pour de plus amples informations, consultez Collecter des métriques de processus avec le plugin procstat. -
jmx– Facultatif. Indique que vous souhaitez extraire les métriques Java Management Extensions (JMX) à partir de l’instance. Pour plus d’informations sur les champs que vous pouvez utiliser dans cette section et les métriques que vous pouvez collecter, consultez Collecte des métriques Java Management Extensions (JMX). -
otlp: facultatif. Indique que vous souhaitez collecter des métriques à partir du kit SDK OpenTelemetry. Pour plus d’informations sur les champs que vous pouvez utiliser dans cette section, consultez Collecte de métriques et de suivis avec OpenTelemetry.
L'exemple suivant illustre une section metrics à utiliser dans Windows Server. Dans cet exemple, de nombreuses métriques Windows sont collectées et l'ordinateur est également défini pour recevoir des métriques supplémentaires à partir d'un client 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 section logs peut inclure les champs suivants :
-
service.name: facultatif. Spécifie le nom du service à utiliser pour renseigner l’entité afin de trouver la télémétrie associée. -
deployment.environment: facultatif. Spécifie le nom de l’environnement à utiliser pour renseigner l’entité afin de trouver la télémétrie associée. -
logs_collected– Obligatoire si la sectionlogsest incluse. Spécifie les fichiers journaux et les journaux d'événements Windows qui doivent être collectés à partir du serveur. Elle peut inclure deux champs,filesetwindows_events.-
files– Spécifie les fichiers journaux habituels qui doivent être collectés par l'agent CloudWatch. Il contient un champ,collect_list, qui définit plus précisément ces fichiers.-
collect_list– Obligatoire sifilesest inclus. Contient un tableau d'entrées, chacune spécifiant un fichier journal à collecter. Chacune de ces entrées peut inclure les champs suivants :-
file_path– Spécifie le chemin du fichier journal à charger dans CloudWatch Logs. Les règles de correspondance glob Unix standard sont acceptées, avec l'ajout de**comme super astérisque. Par exemple, si vous indiquez/var/log/**.log, tous les fichiers.logdans l'arborescence de répertoires/var/logdoivent être collectés. Pour obtenir des exemples supplémentaires, consultez Glob Library. L'astérisque standard peut également être utilisé comme caractère générique standard. Par exemple,
/var/log/system.log*correspond à des fichiers tels quesystem.log_1111,system.log_2222et ainsi de suite dans/var/log.Seul le dernier fichier est transmis à CloudWatch Logs, selon l'heure de modification du fichier. Nous vous recommandons d'utiliser des caractères génériques pour spécifier une série de fichiers du même type, comme
access_log.2018-06-01-01etaccess_log.2018-06-01-02, mais pas de types différents, commeaccess_log_80etaccess_log_443. Pour spécifier plusieurs types de fichiers, ajoutez une autre entrée de flux de journaux dans le fichier de configuration de l'agent, afin que chaque type de fichier journal soit envoyé dans un flux de journal différent. -
auto_removal: facultatif. Si la valeur esttrue, l'agent CloudWatch supprime automatiquement ce fichier journal une fois qu'il a été lu et qu'il a fait l'objet d'une rotation. En général, les fichiers journaux sont supprimés une fois que tout leur contenu a été téléchargé vers CloudWatch Logs. Cependant, si l’agent atteint la fin du fichier (End of File, EOF) et détecte un autre fichier journal plus récent correspondant au mêmefile_path, il supprime l’ANCIEN fichier. Vous devez donc vous assurer que l’écriture dans l’ancien fichier est terminée avant d’en créer un NOUVEAU. La bibliothèque de suivi RUSTprésente une incompatibilité connue : elle peut créer un NOUVEAU fichier journal tout en continuant à écrire dans l’ANCIEN fichier. L'agent supprime uniquement les fichiers complets issus des journaux qui créent plusieurs fichiers, tels que les journaux qui créent des fichiers distincts pour chaque date. Si un journal écrit en continu dans un fichier unique, celui-ci n'est pas supprimé.
Si vous avez déjà une méthode de rotation ou de suppression de fichiers journaux en place, nous vous recommandons d'ignorer ce champ ou de le définir sur
false.Si vous omettez ce champ, la valeur par défaut de
falseest utilisée. -
log_group_name: facultatif. Spécifie le nom du groupe de journal à utiliser dans CloudWatch Logs.Nous vous recommandons d’utiliser ce champ pour spécifier un nom de groupe de journaux afin d’éviter toute confusion. Si vous omettez
log_group_name, la valeurfile_pathjusqu’au point final est utilisée comme nom de groupe de journaux. Par exemple, si le chemin de fichier est/tmp/TestLogFile.log.2017-07-11-14, le nom du groupe de journal est/tmp/TestLogFile.log.Si vous spécifiez un nom de groupe de journaux, vous pouvez utiliser
{instance_id},{hostname},{local_hostname}et{ip_address}en tant que variables au sein du nom.{hostname}récupère le nom d’hôte à partir des métadonnées EC2 et{local_hostname}utilise le nom d’hôte du fichier de configuration du réseau.Si vous utilisez ces variables pour créer de nombreux groupes de journaux différents, gardez à l'esprit la limite de 1 000 000 groupes de journaux par compte et par région.
Les caractères autorisés sont : a–z, A–Z, 0–9, « _ » (trait de soulignement), « - » (tiret), « / » (barre oblique) et « . » (point).
-
log_group_class: facultatif. Spécifie la classe de groupe de journaux à utiliser pour le nouveau groupe de journaux. Pour plus d’informations sur les classes de groupes de journaux, veuillez consulter la rubrique Log classes.Les valeurs valides sont
STANDARDetINFREQUENT_ACCESS. Si vous omettez ce champ, la valeur par défaut deSTANDARDest utilisée.Important
Une fois qu’un groupe de journaux est créé, sa classe ne peut pas être modifiée.
-
log_stream_name: facultatif. Spécifie le nom du flux de journal à utiliser dans CloudWatch Logs. Dans le cadre du nom, vous pouvez utiliser{instance_id},{hostname},{local_hostname}et{ip_address}en tant que variables au sein du nom.{hostname}récupère le nom d'hôte à partir des métadonnées EC2 et{local_hostname}utilise le nom d'hôte du fichier de configuration du réseau.Si vous omettez ce champ, la valeur du paramètre
log_stream_namedans la sectionlogsglobale est utilisée. Si ce champ est également omis, la valeur par défaut pour{instance_id}est utilisée.Un flux de journaux est créé automatiquement s'il n'en existe pas déjà.
-
retention_in_days: facultatif. Spécifie le nombre de jours de conservation des événements du journal dans le groupe de journaux spécifié.-
Si l'agent crée ce groupe de journaux maintenant et que vous omettez ce champ, la rétention de ce nouveau groupe de journaux est définie comme n'expirant jamais.
-
Si ce groupe de journaux existe déjà et que vous spécifiez ce champ, la nouvelle rétention que vous spécifiez est utilisée. Si vous omettez ce champ pour un groupe de journaux existant, la rétention du groupe de journaux n'est pas modifiée.
L'assistant de l'agent CloudWatch utilise
-1comme valeur par défaut de ce champ lorsqu'il est utilisé pour créer le fichier de configuration de l'agent et que vous ne spécifiez aucune valeur pour la conservation des journaux. La valeur-1définie par l’assistant indique que les événements du groupe de journaux n’expirent jamais. Cependant, la modification manuelle de cette valeur sur-1n'a aucun effet.
Les valeurs possibles sont : 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288, et 3653.
Si vous configurez l'agent pour qu'il écrive plusieurs flux de journaux dans le même groupe de journaux, le fait de spécifier le
retention_in_daysdans un seul endroit définira la rétention des journaux pour l'ensemble du groupe de journaux. Si vous spécifiez leretention_in_dayspour le même groupe de journaux à plusieurs endroits, la rétention est définie si toutes ces valeurs sont égales. Toutefois, si différentes valeurs deretention_in_dayssont spécifiées pour le même groupe de journaux à plusieurs endroits, la rétention des journaux ne sera pas définie et l'agent s'arrêtera, renvoyant une erreur.Note
Le rôle IAM ou l'utilisateur IAM de l'agent doit disposer du
logs:PutRetentionPolicypour qu'il puisse définir des politiques de rétention.Avertissement
Si vous définissez le
retention_in_dayspour un groupe de journaux existant, tous les journaux de ce groupe publiés avant le nombre de jours que vous spécifiez sont supprimés. Par exemple, une valeur de 3 entraînerait la suppression de tous les journaux datant de 3 jours et plus. -
-
filters: facultatif. Peut contenir un tableau d'entrées, chacune spécifiant une expression régulière et un type de filtre pour spécifier s'il faut publier ou supprimer des entrées de journal correspondant au filtre. Si vous omettez ce champ, tous les journaux du fichier journal sont publiés dans CloudWatch Logs. Si vous incluez ce champ, l'agent traite chaque message de journal avec tous les filtres que vous spécifiez, et seuls les événements du journal qui satisfont tous les filtres sont publiés dans CloudWatch Logs. Les entrées de journal qui ne satisfont pas tous les filtres restent dans le fichier journal de l'hôte, mais ne seront pas envoyées à CloudWatch Logs.Chaque entrée du tableau de filtres peut comprendre les champs suivants :
-
type– Indique le type de filtre. Les valeurs valides sontincludeetexclude. Avecinclude, l'entrée de journal doit correspondre à l'expression pour être publiée dans CloudWatch Logs. Avecexclude, chaque entrée de journal qui correspond au filtre n'est pas envoyée à CloudWatch Logs. -
expression– Chaîne d'expression régulière qui suit la Syntaxe RE2. Note
L'agent CloudWatch ne vérifie pas les performances des expressions régulières que vous fournissez ni ne limite la durée d'exécution de l'évaluation des expressions régulières. Nous vous recommandons de faire attention à ne pas écrire une expression dont l'évaluation est coûteuse. Pour plus d'informations sur les problèmes possibles, consultez Regular expression Denial of Service - ReDoS
(Déni de service d'expression régulière - ReDoS)
Par exemple, l'extrait suivant du fichier de configuration de l'agent CloudWatch publie des journaux qui sont des demandes PUT et POST dans CloudWatch Logs, mais exclut les journaux provenant 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)" } ] }, ..... ]Note
L'ordre des filtres dans le fichier de configuration est important pour les performances. Dans l'exemple précédent, l'agent élimine tous les journaux qui correspondent à
Firefoxavant de commencer à évaluer le deuxième filtre. Afin que moins d'entrées de journaux ne soient évaluées par plusieurs filtres, placez en premier le filtre qui devrait exclure le plus de journaux dans le fichier de configuration. -
-
timezone: facultatif. Spécifie le fuseau horaire à utiliser lors de l'écriture des horodatages sur les événements du journal. Les valeurs valides sontUTCetLocal. La valeur par défaut estLocal.Ce paramètre est ignoré si vous ne spécifiez pas de valeur pour
timestamp_format. -
timestamp_format: facultatif. Spécifie le format d'horodatage à l'aide d'un texte brut et de symboles spéciaux commençant par %. Si vous omettez ce champ, l'heure actuelle est utilisée. Si vous utilisez ce champ, vous pouvez utiliser les symboles dans la liste suivante dans le cadre du format.Note
Ce paramètre n’est pas pris en compte lorsque le paramètre
file_pathest défini suramazon-cloudwatch-agent.logSi une seule entrée de journal contient deux horodatages qui correspondent au format, le premier horodatage est utilisé.
Cette liste des symboles est différente de celle utilisée par l'ancien agent CloudWatch Logs. Pour obtenir un résumé de ces différences, consultez Différences d’horodatage entre l’agent CloudWatch et l’agent CloudWatch Logs antérieur.
%y-
Année sans siècle sous forme de nombre décimal auquel est ajouté un zéro. Par exemple,
19pour représenter 2019. %Y-
Année sans siècle sous forme de nombre décimal. Par exemple,
2019. %b-
Mois sous forme du nom abrégé dans la langue locale
%B-
Mois sous forme du nom complet dans la langue locale
%m-
Mois sous forme de nombre décimal auquel est ajouté un zéro
%-m-
Mois sous forme de nombre décimal (sans zéro supplémentaire)
%d-
Jour du mois sous forme de nombre décimal auquel est ajouté un zéro
%-d-
Jour du mois sous forme de nombre décimal (sans zéro supplémentaire)
%A-
Nom complet du jour de la semaine, par exemple
Monday %a-
Abréviation du jour de la semaine, par exemple
Mon %H-
Heure (au format 24 heures) sous forme de nombre décimal auquel est ajouté un zéro
%I-
Heure (au format 12 heures) sous forme de nombre décimal auquel est ajouté un zéro
%-I-
Heure (au format 12 heures) sous forme de nombre décimal (sans zéro supplémentaire)
%p-
AM ou PM
%M-
Minutes sous forme de nombre décimal auquel est ajouté un zéro
%-M-
Minutes sous forme de nombre décimal (sans zéro supplémentaire)
%S-
Secondes sous forme de nombre décimal auquel est ajouté un zéro
%-S-
Secondes sous forme de nombre décimal (sans zéro supplémentaire)
%f-
Secondes fractionnelles sous forme de nombre décimal (1 à 9 chiffres), avec remplissage de zéros sur la gauche.
%Z-
Fuseau horaire, par exemple
PST %z-
Fuseau horaire, exprimé en tant que décalage entre le fuseau horaire local et l'heure universelle coordonnée (UTC). Par exemple,
-0700. Seul ce format est pris en charge. Par exemple,-07:00n'est pas un format valide.
-
multi_line_start_pattern– Spécifie le modèle pour identifier le début d'un message de journal. Un message de journal est composé de plusieurs lignes : une ligne correspondant au modèle et les lignes suivantes qui ne correspondent pas au modèle.Si vous ne renseignez pas ce champ, le mode à plusieurs lignes est désactivé, et toute ligne commençant par un caractère autre qu'un espace ferme le message de journal précédent et commence un nouveau message de journal.
Si vous incluez ce champ, vous pouvez spécifier
{timestamp_format}afin d'utiliser la même expression régulière que votre format d'horodatage. Dans le cas contraire, vous pouvez spécifier une autre expression régulière à utiliser pour CloudWatch Logs afin de déterminer les lignes de début des entrées à plusieurs lignes. -
encoding– Spécifie l'encodage du fichier journal pour que le fichier puisse être lu correctement. Si vous spécifiez un encodage incorrect, cela peut entraîner une perte de données car les caractères qui ne peuvent pas être décodés seront remplacés par d'autres caractères.La valeur par défaut est
utf-8. Les valeurs possibles sont les suivantes :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: facultatif. Spécifie le nom du service à utiliser pour renseigner l’entité afin de trouver la télémétrie associée. -
deployment.environment: facultatif. Spécifie le nom de l’environnement à utiliser pour renseigner l’entité afin de trouver la télémétrie associée.
-
-
-
La section
windows_eventsindique le type d'événements Windows à collecter depuis les serveurs exécutant Windows Server. Il inclut les champs suivants :-
collect_list– Obligatoire siwindows_eventsest inclus. Indique les types et niveaux des événements Windows à collecter. Chaque journal à collecter comporte une entrée dans cette section, laquelle peut inclure les champs suivants :-
event_name– Spécifie le type des événements Windows à consigner. Ceci est équivalent au nom du canal du journal des événements de Windows : par exemple,System,Security,Applicationetc.. Ce champ est obligatoire pour chaque type d'événement Windows à consigner.Note
Lorsque CloudWatch récupère des messages à partir d'un canal de journal Windows, il recherche le canal de journal en fonction de sa propriété
Full Name. Pendant ce temps, le panneau de navigation de l'Observateur d'événements Windows affiche la propriétéLog Namedes canaux de journal. Les propriétésFull NameetLog Namene correspondent pas toujours. Pour vérifier que la propriétéFull Named'un canal, faites un clic droit dessus dans l'Observateur d'événements Windows et ouvrez Properties (Propriétés). -
event_levels: facultatif. Indique les niveaux d’événements à journaliser. Vous devez spécifier chaque niveau à consigner. Les valeurs possibles incluentINFORMATION,WARNING,ERROR,CRITICALetVERBOSE. Ce champ est facultatif pour chaque type d’événement Windows à journaliser et peut être utilisé avec d’autres options de filtrage telles queevent_idsetfilters. event_ids: facultatif. Contient un tableau d’ID d’événement Windows pour spécifier les événements à collecter dans le journal des événements Windows. Si ce champ n’est pas renseigné, tous les événements du journal spécifié sont collectés. Si ce champ est renseigné, l’agent ne collecte que les événements dont l’ID correspond aux ID d’événement indiqués.Chaque entrée du tableau
event_idsdoit être une valeur numérique d’identifiant d’événement et peut être combiné avec d’autres options de filtrage. Consultez la troisième entrée dans l’exemple de configuration ci-dessous.Note
Il est recommandé d’utiliser
event_idspour le filtrage plutôt que des expressions regex lorsque vous devez filtrer par ID d’événement, car cela offre de meilleures performances.filters: facultatif. Contient un tableau d’entrées. Chaque entrée Indique une expression régulière et un type de filtre indiquant s’il faut publier ou exclure les entrées de journal qui correspondent à ce filtre. Lorsque ce champ est inclus, l’agent traite chaque message de journal avec tous les filtres que vous spécifiez, et seuls les événements du journal qui satisfont tous les filtres sont publiés dans CloudWatch Logs. Les journaux d’événements Windows qui ne satisfont pas tous les filtres seront ignorés et ne seront pas envoyés à CloudWatch Logs. La section des filtres peut également être utilisée avec d’autres mécanismes de filtrage tels que les ID d’événement [4624, 4625] et les niveaux du système (information, erreur ou critique) pour filtrer efficacement les journaux et les envoyer vers CloudWatch.Chaque entrée du tableau de filtres peut comprendre les champs suivants :
type: indique le type de filtre. Les valeurs valides sontincludeetexclude. En cas d’inclusion, l’entrée d’événement Windows doit correspondre à l’expression pour être publiée dans CloudWatch Logs. En cas d’exclusion, les entrées du journal d’événements Windows qui correspondent au filtre ne sont pas envoyées à CloudWatch Logs.expression: chaîne d’expression régulière qui suit la syntaxe RE2.
Note
L’agent CloudWatch ne valide pas les expressions régulières que vous fournissez. Cela ne limite pas non plus leur temps d’évaluation. Rédigez vos expressions avec soin pour éviter les problèmes de performances. Pour plus d’informations sur les risques de sécurité, consultez Déni de service par expression régulière – ReDoS (Regular expression Denial of Service)
. Dans l’exemple de configuration d’agent ci-dessous :
Pour la première entrée, l’agent envoie à CloudWatch les journaux contenant les messages d’échec de la base de données, toutes les activités liées à l’authentification et tous les événements de connexion (tentatives réussies ou échouées). Tout journal qui ne correspond pas à ce modèle est ignoré.
Dans la deuxième entrée, le filtrage initial est effectué en fonction des ID d’événement pour l’abonnement aux événements Windows. L’agent collecte tous les journaux contenant la chaîne de caractères « utilisateur » et ignore ceux qui ne correspondent pas à ces modèles. L’agent supprime ensuite les journaux qui contiennent
successfulavant d’envoyer les journaux restants à CloudWatch Logs. Chaque type de filtre est appliqué à chaque journal d’événements Windows avant d’être envoyé à CloudWatch."collect_list": [ { "event_name": "Application", "log_group_name": "ApplicationEvents", "log_stream_name": "ApplicationEvents", "filters": [ { "type": "include", "expression": "Database.*failed|Authentication.*|login.*" } ] }, { "event_name": "System", "log_group_name": "SystemEvents", "log_stream_name": "Logon-events", "event_ids": [ 4624, 4625 ], "filters": [ { "type": "include", "expression": ".*user.*" }, { "type": "exclude", "expression": ".*successful.*" } ] } ..... ]Note
L’ordre des filtres dans la configuration influence directement les performances. Dans la deuxième entrée, l’agent ignore d’abord tous les journaux qui ne correspondent pas à l’utilisateur avant d’évaluer la deuxième expression de filtrage. Pour des performances optimales, il est recommandé d’ordonner les filtres du plus fort au plus faible taux d’exclusion.
Bien qu’il soit possible de filtrer les journaux en fonction des ID d’événement et des niveaux système dans les expressions de filtre, il est recommandé d’utiliser les
event_idset lelog_levelcomme illustré dans la deuxième entrée, afin d’obtenir de meilleures performances.Avertissement
Même si tous les mécanismes de filtrage (event_levels, event_ids, filtres) sont facultatifs, au moins l’un d’entre eux doit être défini dans la configuration de l’agent pour activer le filtrage des journaux.
-
log_group_name– Obligatoire Spécifie le nom du groupe de journal à utiliser dans CloudWatch Logs. -
log_stream_name: facultatif. Spécifie le nom du flux de journal à utiliser dans CloudWatch Logs. Dans le cadre du nom, vous pouvez utiliser{instance_id},{hostname},{local_hostname}et{ip_address}en tant que variables au sein du nom.{hostname}récupère le nom d'hôte à partir des métadonnées EC2 et{local_hostname}utilise le nom d'hôte du fichier de configuration du réseau.Si vous omettez ce champ, la valeur du paramètre
log_stream_namedans la sectionlogsglobale est utilisée. Si ce champ est également omis, la valeur par défaut pour{instance_id}est utilisée.Un flux de journaux est créé automatiquement s'il n'en existe pas déjà.
-
event_format: facultatif. Spécifie le format à utiliser lors du stockage d'événements Windows dans CloudWatch Logs.xmlutilise le format XML comme dans Windows Event Viewer.textutilise le format de l'agent CloudWatch Logs existant. -
retention_in_days: facultatif. Spécifie le nombre de jours de conservation des événements Windows dans le groupe de journaux spécifié.-
Si l'agent crée ce groupe de journaux maintenant et que vous omettez ce champ, la rétention de ce nouveau groupe de journaux est définie comme n'expirant jamais.
-
Si ce groupe de journaux existe déjà et que vous spécifiez ce champ, la nouvelle rétention que vous spécifiez est utilisée. Si vous omettez ce champ pour un groupe de journaux existant, la rétention du groupe de journaux n'est pas modifiée.
L'assistant de l'agent CloudWatch utilise
-1comme valeur par défaut de ce champ lorsqu'il est utilisé pour créer le fichier de configuration de l'agent et que vous ne spécifiez aucune valeur pour la conservation des journaux. La valeur-1indique que la valeur définie par l'assistant spécifie que les événements du groupe de journaux n'expirent pas. Cependant, la modification manuelle de cette valeur sur-1n'a aucun effet.
Les valeurs possibles sont : 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288, et 3653.
Si vous configurez l'agent pour qu'il écrive plusieurs flux de journaux dans le même groupe de journaux, le fait de spécifier le
retention_in_daysdans un seul endroit définira la rétention des journaux pour l'ensemble du groupe de journaux. Si vous spécifiez leretention_in_dayspour le même groupe de journaux à plusieurs endroits, la rétention est définie si toutes ces valeurs sont égales. Toutefois, si différentes valeurs deretention_in_dayssont spécifiées pour le même groupe de journaux à plusieurs endroits, la rétention des journaux ne sera pas définie et l'agent s'arrêtera, renvoyant une erreur.Note
Le rôle IAM ou l'utilisateur IAM de l'agent doit disposer du
logs:PutRetentionPolicypour qu'il puisse définir des politiques de rétention.Avertissement
Si vous définissez le
retention_in_dayspour un groupe de journaux existant, tous les journaux de ce groupe publiés avant le nombre de jours que vous spécifiez sont supprimés. Par exemple, une valeur de 3 entraînerait la suppression de tous les journaux datant de 3 jours et plus. -
-
-
-
-
log_stream_name: facultatif. Indique le nom de flux de journal par défaut à utiliser pour les journaux ou les événements Windows qui n'ont pas de nom de flux de journal individuel défini dans le paramètrelog_stream_nameau sein de leur entrée danscollect_list. -
endpoint_override– Spécifie un point de terminaison FIPS ou un lien privé à utiliser en tant que point de terminaison auquel l'agent envoie les journaux. Cette spécification de champ et la définition d'un lien privé vous permettent d'envoyer les journaux à un point de terminaison Amazon VPC. Pour de plus amples informations, consultez Qu'est-ce qu'Amazon VPC ?.La valeur de
endpoint_overridedoit être une chaîne qui est une URL.Par exemple, la partie suivante de la section Journaux (logs) du fichier de configuration définit l'agent pour qu'il utilise un point de terminaison d'un VPC lors de l'envoi de journaux.
{ "logs": { "endpoint_override": "vpce-XXXXXXXXXXXXXXXXXXXXXXXXX.logs.us-east-1.vpce.amazonaws.com", ...... }, } -
force_flush_interval– Spécifie en secondes la durée maximale pendant laquelle les journaux demeurent dans la mémoire tampon avant d'être envoyés au serveur. Quelle que soit la configuration de ce champ, si la taille des journaux dans la mémoire tampon atteint 1 Mo, les journaux sont immédiatement envoyés au serveur. La valeur par défaut est 5.Si vous utilisez l'agent pour signaler des métriques haute résolution au format de métrique intégrée et que vous définissez des alertes sur ces métriques, conservez la valeur par défaut de 5 pour ce paramètre. Dans le cas contraire, les métriques sont signalées avec un délai susceptible de déclencher des alertes si des données sont partielles ou incomplètes.
-
credentials– Spécifie un rôle IAM à utiliser lors de l'envoi de journaux à un compte AWS différent. S'il est spécifié, ce champ contient un paramètre,role_arn.-
role_arn– Spécifie l'ARN d'un rôle IAM à utiliser pour l'authentification lors de l'envoi de journaux à un compte AWS différent. Pour de plus amples informations, consultez Envoi de métriques, de journaux et de traces à un autre compte. S'il est spécifié ici, il remplace lerole_arnspécifié dans la sectionagentdu fichier de configuration, le cas échéant.
-
-
metrics_collected: ce champ peut contenir des sections pour spécifier que l’agent doit collecter des journaux afin d’activer des cas d’utilisation tels que CloudWatch Application Signals et Container Insights avec observabilité améliorée pour Amazon EKS.-
application_signals(Facultatif) Spécifie que vous souhaitez activer CloudWatch Application Signals. Pour plus d’informations sur cette configuration, veuillez consulter la rubrique Activation de CloudWatch Application Signals. -
kubernetes: ce champ peut contenir un paramètreenhanced_container_insightsque vous pouvez utiliser pour activer Container Insights avec une observabilité améliorée pour Amazon EKS.-
enhanced_container_insights: définissez cette option àtruepour activer Container Insights avec une observabilité améliorée pour Amazon EKS. Pour de plus amples informations, consultez Container Insights avec observabilité améliorée pour Amazon EKS. -
accelerated_compute_metrics: définissez cette variable surfalsepour désactiver la collecte des métriques GPU Nvidia sur les clusters Amazon EKS. Pour de plus amples informations, consultez Métriques des GPU NVIDIA.
-
-
emf: pour collecter des métriques intégrées dans des journaux, il n'est plus nécessaire d'ajouter ce champemf. Il s'agit d'un champ hérité spécifiant que l'agent doit collecter les journaux au format de métrique intégrée. Vous pouvez générer des données de métriques à partir de ces journaux. Pour de plus amples informations, consultez Intégration de métriques dans les journaux. -
otlp– Facultatif. Indique que vous souhaitez collecter des métriques à partir du kit SDK OpenTelemetry. Pour plus d’informations sur les champs que vous pouvez utiliser dans cette section, consultez Collecte de métriques et de suivis avec OpenTelemetry.
-
Voici un exemple de section 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_ids": [ 1001, 1008 ], "log_group_name": "System", "log_stream_name": "System" }, { "event_name": "CustomizedName", "event_levels": [ "INFORMATION", "ERROR" ], "log_group_name": "CustomizedLogGroup", "log_stream_name": "CustomizedLogStream" }, { "event_name": "Application", "event_levels": [ "INFORMATION", "ERROR" ], "event_ids":[ 7369, 5624 ], "log_group_name": "CustomizedLogGroup", "log_stream_name": "CustomizedLogStream" } ] } }, "log_stream_name": "my_log_stream_name", "metrics_collected": { "kubernetes": { "enhanced_container_insights": true } } }
En ajoutant une section traces au fichier de configuration de l’agent CloudWatch, vous pouvez activer CloudWatch Application Signals ou collecter des suivis à partir de X-Ray et du kit SDK d’instrumentation OpenTelemetry et les envoyer à X-Ray.
Important
Le rôle IAM ou l’utilisateur IAM de l’agent doit disposer de la politique AWSXrayWriteOnlyAccess pour pouvoir envoyer des données de suivis à X-Ray.
Pour commencer à collecter rapidement des traces, vous pouvez simplement ajouter les éléments suivants au fichier de configuration de l'agent CloudWatch.
"traces_collected": { "xray": { }, "otlp": { } }
Si vous ajoutez la section précédente au fichier de configuration de l'agent CloudWatch et que vous redémarrez l'agent, celui-ci commencera à collecter des traces en utilisant les options et valeurs par défaut suivantes. Pour plus d'informations sur ces paramètres, consultez les définitions des paramètres plus loin dans cette section.
"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 section traces peut inclure les champs suivants :
-
traces_collected– Obligatoire si la sectiontracesest incluse. Spécifie les kits SDK à partir desquels collecter des traces. La structure peut inclure les champs suivants :-
application_signals: facultatif. Spécifie que vous souhaitez activer CloudWatch Application Signals. Pour plus d’informations sur cette configuration, veuillez consulter la rubrique Activation de CloudWatch Application Signals. -
xray: facultatif. Spécifie que vous souhaitez collecter des traces à partir du kit SDK X-Ray. Cette section peut inclure les champs suivants :-
bind_address– Facultatif. Spécifie l'adresse UDP que l'agent CloudWatch doit utiliser pour écouter les traces de X-Ray. Le format estip:port. Cette adresse doit correspondre à l'adresse définie dans le kit SDK X-Ray.Si vous omettez ce champ, la valeur par défaut de
127.0.0.1:2000est utilisée. -
tcp_proxy: facultatif. Configure l'adresse d'un proxy utilisé pour prendre en charge l'échantillonnage à distance X-Ray. Pour de plus amples informations, veuillez consulter Configuring sampling rules dans la documentation X-Ray.Cette section peut contenir les champs suivants.
-
bind_address: facultatif. Spécifie l'adresse TCP à laquelle l'agent CloudWatch doit configurer le proxy. Le format estip:port. Cette adresse doit correspondre à l'adresse définie dans le kit SDK X-Ray.Si vous omettez ce champ, la valeur par défaut de
127.0.0.1:2000est utilisée.
-
-
-
otlp: facultatif. Spécifie que vous souhaitez collecter des traces à partir du kit SDK OpenTelemetry. Pour plus d’informations sur les champs que vous pouvez utiliser dans cette section, consultez Collecte de métriques et de suivis avec OpenTelemetry.) Pour plus d'informations sur AWS Distro pour OpenTelemetry, consultez AWS Distro pour OpenTelemetry. Pour plus d'informations sur les kits SDK AWS Distro pour OpenTelemetry, consultez Introduction . Cette section peut inclure les champs suivants :
-
grpc_endpoint– Facultatif. Spécifie l'adresse que l'agent CloudWatch doit utiliser pour écouter les traces OpenTelemetry envoyées à l'aide des appels de procédure distante gRPC. Le format estip:port. Cette adresse doit correspondre à l'adresse définie pour l'exportateur gRPC dans le kit SDK OpenTelemetry.Si vous omettez ce champ, la valeur par défaut de
127.0.0.1:4317est utilisée. -
http_endpoint: facultatif. Spécifie l'adresse que l'agent CloudWatch doit utiliser pour écouter les traces OTLP envoyées via HTTP. Le format estip:port. Cette adresse doit correspondre à l'adresse définie pour l'exportateur HTTP dans le kit SDK OpenTelemetry.Si vous omettez ce champ, la valeur par défaut de
127.0.0.1:4318est utilisée.
-
-
-
concurrency: facultatif. Spécifie le nombre maximum d'appels simultanés à X-Ray qui peuvent être utilisés pour télécharger des traces. La valeur par défaut est8. -
local_mode: facultatif. Si la valeur esttrue, l'agent ne collecte pas les métadonnées de l'instance Amazon EC2. La valeur par défaut estfalse. -
endpoint_override: facultatif. Spécifie un point de terminaison FIPS ou un lien privé à utiliser en tant que point de terminaison auquel l'agent CloudWatch envoie les traces. Cette spécification de champ et la définition d'un lien privé vous permettent d'envoyer les traces à un point de terminaison Amazon VPC. Pour plus d'informations, consultez Qu'est-ce qu'Amazon VPC ?.La valeur de
endpoint_overridedoit être une chaîne qui est une URL. -
region_override: facultatif. Spécifie la région à utiliser pour le point de terminaison X-Ray. L'agent CloudWatch envoie les traces à X-Ray dans la région spécifiée. Si vous ne spécifiez pas ce champ, l'agent envoie les traces à la région dans laquelle se trouve l'instance Amazon EC2.Si vous spécifiez une région ici, elle est prioritaire sur le réglage du paramètre
regiondans la sectionagentdu fichier de configuration. -
proxy_override: facultatif. Spécifie l'adresse du serveur proxy que l'agent CloudWatch doit utiliser lors de l'envoi de requêtes à X-Ray. Le protocole du serveur proxy doit être spécifié dans le cadre de cette adresse. -
credentials– Spécifie un rôle IAM à utiliser lors de l'envoi de traces à un compte AWS différent. S'il est spécifié, ce champ contient un paramètre,role_arn.-
role_arn– Spécifie l'ARN d'un rôle IAM à utiliser pour l'authentification lors de l'envoi de traces à un compte AWS différent. Pour de plus amples informations, consultez Envoi de métriques, de journaux et de traces à un autre compte. S'il est spécifié ici, il remplace lerole_arnspécifié dans la sectionagentdu fichier de configuration, le cas échéant.
-
-
transit_spans_in_otlp_format: facultatif. Sitrue, il envoie les suivis vers X-Ray au format OpenTelemetry Protocol, qui prend en charge les événements de segments dans Transaction Search. Pour de plus amples informations, consultez Ajout d’attributs personnalisés. L’argument par défaut estfalse.
L'exemple suivant illustre un fichier de configuration d'agent CloudWatch complet pour un serveur Linux.
Les éléments répertoriés dans les sections measurement qui concernent les métriques que vous souhaitez collecter peuvent spécifier soit l'intégralité du nom de la métrique, par exemple, ou simplement la partie du nom de la métrique qui sera ajoutée au type de ressource. Par exemple, la spécification de reads ou diskio_reads dans la section measurement de la section diskio entraîne la collecte de la métrique diskio_reads.
Cet exemple illustre les deux méthodes possibles pour spécifier des métriques dans la section 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 } } } }
L'exemple suivant illustre un fichier de configuration d'agent CloudWatch complet pour un serveur exécutant 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" } }
Enregistrer manuellement le fichier de configuration d'agent CloudWatch
Si vous créez ou modifiez manuellement la configuration d'agent CloudWatch, vous pouvez lui donner n'importe quel nom. Vous pouvez ensuite copier ce fichier vers d'autres serveurs sur lesquels vous souhaitez exécuter l'agent une fois que vous avez créé le fichier.
Chargement du fichier de configuration d'agent CloudWatch dans le Parameter Store du Systems Manager
Si vous prévoyez d'utiliser l'agent SSM Agent pour installer l'agent CloudWatch sur les serveurs, vous pouvez le charger sur le Parameter Store du Systems Manager une fois que vous modifiez manuellement le fichier de configuration d'agent CloudWatch. Pour cela, utilisez la commande Systems Manager put-parameter.
Pour être en mesure de stocker le fichier dans le Parameter Store, vous devez utiliser un rôle IAM avec les autorisations suffisantes.
Utilisez la commande suivante, où nom de paramètre est le nom à utiliser pour ce fichier dans le Parameter Store et configuration_file_pathname est le chemin et le nom du fichier de configuration que vous avez modifié.
aws ssm put-parameter --name "parameter name" --type "String" --value file://configuration_file_pathname