Utilisation de l'option de requête métrique pour interroger les données de CloudWatch Metrics Insights - Amazon Managed Grafana

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.

Utilisation de l'option de requête métrique pour interroger les données de CloudWatch Metrics Insights

Note

Amazon CloudWatch Metrics Insights est en version préliminaire. CloudWatch Les fonctionnalités de Metrics Insights sont ouvertes à tous Comptes AWS. Les fonctionnalités peuvent être sujettes à modification.

Vous pouvez interroger CloudWatch les données de Metrics Insights en choisissant le metric query mode dans l'éditeur de requêtes Metric.

CloudWatch Metrics Insights est un puissant moteur de SQL requêtes très performant que vous pouvez utiliser pour interroger vos indicateurs à grande échelle. Il s'agit d'un moteur de requête rapide, flexible et SQL basé sur lequel vous pouvez identifier les tendances et les modèles au sein de tous vos CloudWatch indicateurs en temps réel. Il utilise un dialecte de. SQL Pour plus d'informations sur la syntaxe des requêtes Metrics Insights, consultezSyntaxe des requêtes et mots clés.

Syntaxe des requêtes et mots clés

CloudWatch Metrics Insights utilise un dialecte de. SQL L'exemple suivant montre la syntaxe de la requête.

SELECT FUNCTION(metricName) FROM namespace | [ SCHEMA(namespace[, labelKey [, ...] ]) ] [ WHERE labelKey OPERATOR labelValue [AND|OR|([...])*] [, ...] ] [ GROUP BY labelKey [, ...]] [ ORDER BY FUNCTION() [DESC | ASC] ] [ LIMIT number]

Les mots clés ne font pas la distinction majuscules/majuscules, mais les identificateurs font la distinction majuscules/minuscules. Les identifiants incluent les noms des métriques, des espaces de noms et des dimensions.

Le tableau suivant fournit les mots clés de requête et leurs descriptions.

Mot clé Description
FUNCTION Obligatoire. Spécifie la fonction d'agrégation à utiliser, ainsi que le nom de la métrique à interroger. Les valeurs valides sont AVG, COUNT, MAX, MIN et SUM.
MetricName Obligatoire. Par exemple, CPUUtilization.
FROM Obligatoire. Spécifie la source de la métrique. Vous pouvez spécifier soit l'espace de noms de métrique contenant la métrique à interroger, soit une fonction de SCHEMA table. Voici quelques exemples d'espaces de noms : AWS/EC2 et. AWS/Lambda
SCHEMA (Facultatif) Filtre les résultats de la requête pour afficher uniquement les mesures qui correspondent exactement ou celles qui ne correspondent pas.
WHERE (Facultatif) Filtre les résultats pour n'afficher que les mesures correspondant à l'expression que vous avez spécifiée. Par exemple, WHERE InstanceType != 'c3.4xlarge'.
GROUP BY (Facultatif) Regroupe les résultats de la requête en plusieurs séries chronologiques. Par exemple, GROUP BY ServiceName.
ORDER BY (Facultatif) Spécifie l'ordre des séries chronologiques à renvoyer. Les options sont ASC etDESC.
LIMIT (Facultatif) Limite le nombre de séries chronologiques à renvoyer.

Voici quelques exemples :

  • SELECT AVG(CPUUtilization) FROM "AWS/EC2"

    Correspond à toutes les CPUUtilization métriques de l'AWS/EC2espace de noms, en ignorant leurs dimensions, et renvoie une seule série chronologique agrégée.

  • SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2")

    Correspond uniquement aux CPUUtilization métriques de l'AWS/EC2espace de noms dont aucune dimension n'est définie.

  • SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2", InstanceId)

    Correspond uniquement aux CPUUtilization métriques qui ont été signalées CloudWatch avec exactement une dimension,InstanceId.

  • SELECT SUM(RequestCount) FROM SCHEMA("AWS/ApplicationELB", LoadBalancer, AvailabilityZone)

    Correspond uniquement aux RequestCount métriques signalées au formulaire CloudWatch AWS/ApplicationELB avec exactement deux dimensions, LoadBalancer etAvailabilityZone.

Les valeurs des étiquettes doivent être placées entre guillemets simples.

Caractères d'échappement

Dans une requête, les valeurs d'étiquette doivent toujours être entourées de guillemets simples.   Par exemple, SELECT MAX(CPUUtilization) FROM "AWS/EC2" WHERE AutoScalingGroupName = 'my-production-fleet'.

Les espaces de noms de métriques, les noms de métriques et les clés d'étiquette contenant des caractères autres que des lettres, des chiffres et des traits de soulignement (_) doivent être entourés de guillemets doubles. Par exemple, SELECT MAX("My.Metric"). Si l'un d'entre eux contient lui-même un guillemet double (par exempleBytes"Input"), vous devez éviter ce guillemet double avec des barres obliques inverses, comme dans. SELECT AVG("Bytes\"Input\"") Si un espace de noms de métrique, un nom de métrique ou une clé d'étiquette contient un mot qui est un mot-clé réservé dans Metrics Insights, ceux-ci doivent également être entre guillemets doubles. Par exemple, si vous disposez d'une métrique nommée LIMIT, vous devez utiliser SELECT AVG("LIMIT"). Il est également valable de placer n'importe quel espace de noms, nom de métrique ou étiquette entre guillemets doubles, même s'il n'inclut pas de mot-clé réservé.

Mode générateur et mode code

Vous pouvez créer une requête en Builder mode ou en Code mode.

Pour créer une requête en Builder mode
  1. Parcourez et sélectionnez un espace de noms de métrique, un nom de métrique, un filtre, un groupe et des options de commande à l'aide des informations du tableau précédent.

  2. Pour chacune de ces options, faites votre choix dans la liste des options possibles.

Pour créer une requête en Code mode
  1. Rédigez votre requête dans l'éditeur de code.

  2. Pour exécuter la requête, choisissez Exécuter la requête dans l'éditeur de code.

Pour créer une requête dans le builder mode :

  • Parcourez et sélectionnez un espace de noms de métrique, un nom de métrique, un filtre, un groupe et des options de commande à l'aide des informations du tableau ci-dessus.

  • Pour chacune de ces options, faites votre choix dans la liste des options possibles.

Grafana construit automatiquement une SQL requête en fonction de vos sélections.

Pour créer une requête dans le code mode :

  • Rédigez votre requête dans l'éditeur de code.

  • Pour exécuter la requête, choisissez l'option Exécuter la requête dans l'éditeur de code.

L'éditeur de code intègre une fonction de saisie semi-automatique qui fournit des suggestions de mots clés, d'agrégations, d'espaces de noms, de métriques, d'étiquettes et de valeurs d'étiquette. Les suggestions s'affichent lorsque vous entrez un espace, une virgule ou le signe dollar. Vous pouvez également utiliser la combinaison de touchesCTRL+Space.

L'éditeur de code peut compléter automatiquement la requête. Cependant, l'utilisation de variables de modèle dans l'éditeur de code peut interférer avec l'autocomplétion.

CloudWatch Exemples de Metrics Insights

Note

CloudWatch Metrics Insights est en version préliminaire ouverte. L'aperçu est ouvert à tous les AWS comptes et vous n'avez pas besoin de demander l'accès. Des fonctionnalités peuvent être ajoutées ou modifiées avant l'annonce de la disponibilité générale.

Cette section contient des exemples de requêtes CloudWatch Metrics Insights utiles que vous pouvez copier et utiliser directement ou copier et modifier dans l'éditeur de requêtes. Certains de ces exemples sont déjà disponibles dans la console et vous pouvez y accéder en choisissant Add query (Ajouter une requête) dans la vue Metrics (Métriques).

EC2exemples

Afficher les métriques CPU d'utilisation par instance

SELECT AVG(CPUUtilization) FROM "AWS/EC2" GROUP BY InstanceId

Afficher le CPU taux d'utilisation moyen sur l'ensemble de la flotte

SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2", InstanceId)

Afficher les 10 instances présentant le taux d'CPUutilisation moyen le plus élevé

SELECT MAX(CPUUtilization) FROM "AWS/EC2" GROUP BY InstanceId LIMIT 10

Afficher les 10 instances présentant le CPU taux d'utilisation le plus élevé, classées par maximum, par ordre décroissant

SELECT AVG(CPUUtilization) FROM "AWS/EC2" GROUP BY InstanceId ORDER BY MAX() DESC LIMIT 10

Dans ce cas, l' CloudWatch agent collecte une CPUUtilization métrique par application. Cette requête filtre la moyenne de cette métrique pour un nom d'application spécifique.

SELECT AVG(CPUUtilization) FROM "AWS/CWAgent" WHERE ApplicationName = 'eCommerce' SELECT AVG(ConcurrentExecutions) FROM "AWS/Lambda"

Afficher le temps d'exécution moyen des 10 principales fonctions Lambda, classées par maximum, par ordre décroissant

SELECT AVG(Duration) FROM "AWS/Lambda" GROUP BY FunctionName ORDER BY MAX() DESC LIMIT 10

Afficher le maximum, la moyenne et le minimum des temps d'exécution Lambda

SELECT MAX(Duration) FROM "AWS/Lambda"

Application Load Balancer

Afficher les métriques qui ont les dimensions LoadBalanceret AvailabilityZone

SELECT SUM(RequestCount) FROM SCHEMA("AWS/ApplicationELB", LoadBalancer, AvailabilityZone)

Afficher les statistiques avec le nombre de TCP connexions simultanées actives

SELECT AVG(ActiveConnectionCount) FROM "AWS/ApplicationELB"

EBSExemples Amazon

Afficher les 10 premiers octets d'écriture moyens par volume par ordre décroissant

SELECT AVG(VolumeWriteBytes) FROM "AWS/EBS" GROUP BY VolumeId ORDER BY MAX() DESC LIMIT 10

Afficher le temps d'écriture moyen d'un EBS volume Amazon

SELECT AVG(VolumeTotalWriteTime) FROM "AWS/EBS"

Afficher la durée moyenne d'inactivité des EBS volumes Amazon

SELECT AVG(VolumeIdleTime) FROM "AWS/EBS" View average burst balance per volume SELECT AVG(BurstBalance) FROM "AWS/EBS" GROUP BY VolumeId View average read bytes across Amazon EBS volumes SELECT AVG(VolumeReadBytes) FROM "AWS/EBS"

Afficher le nombre moyen d'octets d'écriture sur les EBS volumes Amazon

SELECT AVG(VolumeWriteBytes) FROM "AWS/EBS"

Exemples Amazon Simple Storage Service

Afficher le groupe de latence moyenne par nom de compartiment

SELECT AVG(TotalRequestLatency) FROM "AWS/S3" GROUP BY BucketName

Afficher le nombre moyen d'objets par compartiment dans tous les compartiments Amazon S3

SELECT AVG(NumberOfObjects) FROM "AWS/S3" GROUP BY BucketName

Exemples Amazon Simple Notification Service

A mazon-simple-notificaation-service -exemples

SELECT AVG(NumberOfMessagesPublished) FROM "AWS/SNS"

Afficher le nombre moyen de messages ayant échoué pour chaque nom de rubrique

SELECT AVG(NumberOfNotificationsFailed) FROM "AWS/SNS" GROUP BY TopicName

AWS APIexemples d'utilisation

Afficher les 20 meilleurs appels AWS APIs en fonction du nombre d'appels enregistrés sur votre compte

SELECT COUNT(CallCount) FROM "AWS/Usage" WHERE "Type" = 'API' GROUP BY "Service", "Resource" ORDER BY SUM() DESC LIMIT 20

CloudWatch Limites de Metrics Insights

CloudWatch Les limites de Metrics Insights sont actuellement les suivantes :

  • Vous ne pouvez interroger que les trois dernières heures de données.

  • Une seule requête ne peut traiter plus de 10 000 métriques. Cela signifie que si les WHERE clauses SELECTFROM, et correspondent à plus de 10 000 métriques, seules les 10 000 premières métriques trouvées seront traitées par la requête.

  • Une seule requête ne peut pas renvoyer plus de 500 séries chronologiques. Cela signifie que si la requête traite plus de 500 métriques, toutes les métriques ne seront pas renvoyées dans les résultats de la requête. Si vous utilisez une ORDER BY clause, toutes les métriques traitées seront triées et les 500 ayant les valeurs les plus élevées ou les plus faibles selon votre ORDER BY clause seront renvoyées. Si vous n'incluez aucune ORDER BY clause, vous ne pouvez pas contrôler les 500 métriques correspondantes qui sont renvoyées.

  • Chaque GetMetricData opération ne peut comporter qu'une seule requête, mais vous pouvez avoir plusieurs widgets dans un tableau de bord qui incluent chacun une requête.