Comment ajouter des informations associées à la télémétrie personnalisée envoyée à CloudWatch - Amazon CloudWatch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Comment ajouter des informations associées à la télémétrie personnalisée envoyée à CloudWatch

Lorsque vous publiez vos propres métriques et journaux sur CloudWatch, les informations d'entité nécessaires à la télémétrie associée ne s'y trouvent pas par défaut. Lorsque vous envoyez des métriques CloudWatch ou des CloudWatch journaux à Logs (avec les PutLogEventsopérations PutMetricDataor), vous pouvez ajouter des informations d'entité à ces journaux ou métriques. Les informations d’entité sont associées à la télémétrie et utilisées dans la fonctionnalité Découvrir les éléments associés pour trouver la télémétrie associée à la même entité.

L’entité envoyée avec la télémétrie représente une ressource ou un service auquel la télémétrie est associée. Par exemple, une métrique concernant un service ou provenant d'une AWS ressource. Pour identifier l’entité associée dans votre code, vous créez un ensemble KeyAttributes et, éventuellement, Attributes de l’entité.

Note

CloudWatch ne peut trouver les ressources associées que pour les entités auxquelles des données de télémétrie ont été envoyées au cours des trois heures précédentes. Si votre ressource n'émet que des données télémétriques éparses (moins d'une fois toutes les 3 heures), vous souhaiterez peut-être envoyer des données télémétriques supplémentaires pour que l'entité reste active à l'intérieur. CloudWatch

Pour plus d’informations sur l’ajout d’informations sur les entités, consultez Informations sur les entités au format EMF.

Les sections suivantes décrivent comment créer le KeyAttributes et Attributes afin d' CloudWatch identifier les ressources et les services associés à la télémétrie.

La KeyAttributes propriété des objets Entity (dans CloudWatch ou dans CloudWatch les journaux) identifie de manière unique l'entité pour laquelle CloudWatch. Il s’agit d’une liste de paires clé-valeur. Les entités ayant le même KeyAttributes sont considérées comme étant la même entité. Les télémétries associées à la même entité sont considérées comme liées et peuvent être facilement trouvées dans le volet Découvrir les éléments associés.

Note

Dans l' CloudWatch API, la propriété est appeléeKeyAttributes. Dans l'API CloudWatch Logs, la propriété est appeléekeyAttributes. Ici, elles sont traitées comme la même propriété.

Il existe cinq types d’objets possibles qu’un Entity peut représenter.

  • AWS::Resource— L'entité représente une AWS ressource, telle qu'une table DynamoDB ou une instance Amazon. EC2

  • AWS::Service— L'entité représente un AWS service, tel qu'Amazon S3. Cela peut être utilisé, par exemple, lors de l’appel de l’opération ListBuckets, qui n’est pas associée à une ressource Amazon S3 spécifique.

  • Service : l’entité représente une charge de travail s’exécutant sur votre compte. Par exemple, une application ou un service que vous gérez.

  • Ressource : l'entité représente une ressource qui n'est pas gérée AWS, par exemple, par les ressources du système d'exploitation, telles que les processus ou les volumes de fichiers.

  • RemoteService— L'entité représente un service externe dans un appel à distance. Par exemple, un appel distant vers une base de données, un cache externe ou un point de terminaison externe.

En fonction du type que vous essayez de représenter parmi ceux mentionnés ci-dessus, vous devez fournir les paires clé-valeur correctes pour KeyAttributes. Vous trouverez ci-dessous une description de chaque type.

AWS::Resource

Pour spécifier une AWS ressource, vous devez inclure les trois paires clé-valeur suivantes :

  • "Type": "AWS::Resource"— Cette paire clé-valeur identifie l'entité en tant AWS que ressource.

  • "ResourceType": "<resource-type>"— La valeur de chaîne de ResourceType est la chaîne de type de CloudFormation ressource. Par exemple, AWS::DynamoDB::Table.

  • "Identifier": "<resource-id>" : identifiant principal de la ressource. Pour plus d'informations, voir PrimaryIdentifier dans le guide de développement d'extensions pour CloudFormation l'utilisateur.

AWS::Service

Pour spécifier un AWS service, vous devez inclure les deux paires clé-valeur suivantes :

  • "Type": "AWS::Service"— Cette paire clé-valeur identifie l'entité en tant AWS que service.

  • "Name": "<service-name>" : la valeur de Name est la chaîne de caractères du nom du service CloudFormation . Par exemple, AWS::DynamoDB.

Service

Pour spécifier un service qui n'est pas géré par AWS, vous devez inclure les trois paires clé-valeur suivantes :

  • "Type": "Service" : cette paire clé-valeur identifie l’entité comme un service.

  • "Name": "<service-name>" : représente le nom du service qui envoie les métriques. Par exemple, my-service-frontend ou api.myservice.com.

  • "Environment": "<environment-name>" : cet attribut spécifie l’emplacement où le service est hébergé ou l’environnement auquel il appartient. Par exemple : us-west-2 ou myservice.production.

Resource

Pour spécifier une ressource qui n'est pas fournie par AWS, vous devez inclure les trois paires clé-valeur suivantes :

  • "Type": "Resource" : cette paire clé-valeur identifie l’entité en tant que ressource.

  • "ResourceType": "<resource-type>" : chaîne spécifiant le type de ressource. Par exemple, K8s::Pod pour un pod Kubernetes.

  • "Identifier": "<resource-id>" : identifiant sous forme de chaîne pour la ressource. Peut contenir plusieurs noms, séparés par des barres verticales. Par exemple, un pod Kubernetes peut être représenté par son nom de cluster, son espace de noms et son nom de pod, tel que MyCluster|MyNamespace|MyPod.

RemoteService

Pour spécifier un service distant, vous devez inclure les deux paires clé-valeur suivantes :

  • "Type": "RemoteService" : cette paire clé-valeur identifie l’entité comme un service distant.

  • "Name": "<remote-service-name>" : spécifie la manière dont l’application fait référence au service externe dans un appel distant. Par exemple, api.test.myservice.com.

Vous pouvez fournir des détails supplémentaires sur le Entity que vous fournissez avec votre télémétrie. Il peut s’agir de détails sur la plateforme, la ressource, l’application ou le fournisseur de télémétrie. Les tableaux suivants décrivent les mots clés que vous pouvez utiliser pour chacun de ces types de données.

Note

Dans l' CloudWatch API, la propriété est appeléeAttributes. Dans l'API CloudWatch Logs, la propriété est appeléeattributes. Ici, elles sont traitées comme la même propriété.

Platform details (Détails de la plateforme)

Mot clé Usage Domaine des valeurs Exemples

PlatformType

Définit la plateforme hébergée.

AWS::EKS, AWS::ECS, AWS::EC2, AWS::Lambda, K8s, Générique

AWS::EC2

EKS.Cluster

Nom du cluster Amazon EKS.

Chaîne alphanumérique avec des délimiteurs de base.

FlyingSquad

K8s.Cluster

Nom du cluster Kubernetes auto-hébergé.

Chaîne alphanumérique avec des délimiteurs de base.

minicube

K8s.Namespace

Nom de l’espace de noms Kubernetes dans les clusters Amazon EKS ou K8s.

Chaîne alphanumérique avec des délimiteurs de base.

default, pet-clinic

K8s.Workload

Nom de la charge de travail Kubernetes dans les clusters Amazon EKS et K8s.

Chaîne alphanumérique avec des délimiteurs de base.

frontend

K8s.Node

Identité du nœud Kubernetes dans les clusters Amazon EKS et K8s.

Nom du nœud K8s (par exemple, nom DNS de l' EC2 instance Amazon).

ip-11-22-33-44.ec2.internal

K8s.Pod

Identité du pod Kubernetes dans les clusters Amazon EKS et K8s.

Identifiant du pod K8s.

frontend-1234abcd56-ef7890

EC2.AutoScalingGroup

Nom du EC2 AutoScaling groupe Amazon.

Chaîne alphanumérique avec des délimiteurs de base.

my-asg-name-1

EC2.InstanceId

Identité de l' EC2 instance Amazon.

Identifiant EC2 d'instance Amazon.

i-1234abcd5678ef90

ECS.Cluster

Identité du cluster Amazon ECS.

Nom du cluster Amazon ECS.

MyCluster

ECS.Service

Identité du service Amazon ECS.

Nom du service Amazon ECS.

MyService

ECS.Task

Identité de la tâche Amazon ECS.

ID de la tâche Amazon ECS.

task-123abc

Lambda.Function

Identité de la fonction Lambda.

Nom de la fonction Lambda.

MyFunction

Host

Nom de l’hôte pour tous les types de plateformes.

Format de sous-domaine.

ip-111-22-33-44.example.com

Détails de ressource

Mot clé Usage Domaine des valeurs Exemples

AWS.Resource.ARN

ARN de la AWS ressource.

Chaîne alphanumérique avec des délimiteurs de base.

arn:aws:dynamodb:us-east-1:123456789012:table/myDynamoDBTable

Détails de l'application

Mot clé Usage Domaine des valeurs Exemples

AWS.Application

Nom de l'application dans AppRegistry.

Chaîne alphanumérique avec des délimiteurs de base.

PetClinicApp

AWS.Application.ARN

ARN de l'application dans AppRegistry.

Chaîne alphanumérique avec des délimiteurs de base.

arn:aws:servicecatalog:us-east-1:1234567890:/applications/...

Informations sur le fournisseur de télémétrie

Mot clé Usage Domaine des valeurs Exemples

Telemetry.SDK

Empreinte digitale de la version du kit SDK OTEL pour les services instrumentés.

Chaîne alphanumérique avec des délimiteurs de base.

opentelemetry,1.32.0-aws-SNAPSHOT,java,Auto

Telemetry.Agent

Empreinte digitale de l’agent utilisé pour collecter et envoyer les données de télémétrie.

Chaîne alphanumérique avec des délimiteurs de base.

CWAgent/1.300026.3, ADOTCollector/1.x

Telemetry.Source

Spécifie le point d’application où la télémétrie a été collectée ou ce qui a été utilisé comme source des données de télémétrie.

ServerSpan, ClientSpan, ProducerSpan, LocalRoot Span ConsumerSpan, MX, système d'exploitation.

ClientSpan, JMX