View a markdown version of this page

Métriques de requêtes avec ProMQL - 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.

Métriques de requêtes avec ProMQL

Qu'est-ce que Prometheus Query Language (ProMQL) ?

Prometheus Query Language (ProMQL) est un langage de requête fonctionnel qui vous permet de sélectionner, d'agréger et de transformer des données de séries chronologiques en temps réel. ProMQL a été initialement conçu pour Prometheus et est devenu un langage de requête populaire pour les métriques.

Amazon CloudWatch prend en charge ProMQL pour interroger les métriques, y compris les métriques ingérées via le protocole OTLP ( OpenTelemetryLine Protocol) et les métriques vendues enrichies.AWS Lorsque vous ingérez des métriques OTLP, CloudWatch préserve la structure sémantique complète de votre télémétrie, y compris les attributs des ressources, la portée de l'instrumentation, les attributs des points de données et les métadonnées AWS spécifiques, et les expose sous forme d'étiquettes ProMQL interrogeables.

Avec ProMQL, vous pouvez effectuer les opérations suivantes :

  • Sélectionnez les séries chronologiques par nom de métrique et par étiquette correspondante.

  • Appliquez des fonctions et des opérateurs mathématiques à des séries chronologiques.

  • Agrégez les mesures selon des dimensions telles que le service, la région ou le compte.

  • Calculez les taux, les histogrammes, les quantiles et les moyennes mobiles.

Vous pouvez utiliser les requêtes ProMQL de manière interactive Exécution de requêtes ProMQL dans Query Studio et également pour créer des alarmes. CloudWatch Pour plus d’informations, consultez Requête ProMAL et Utilisation de ProMQL dans les alarmes.

Note

CloudWatch utilise ProMQL sur la base de la spécification Prometheus 3.0. Cela inclut la prise en charge des noms de UTF-8 métriques et des noms d'étiquettes.

Les concepts suivants sont fondamentaux pour travailler avec ProMQL dans. CloudWatch

Concept Description

Séries chronologiques

Un flux de valeurs horodatées identifiées par un nom de métrique et un ensemble de paires clé-valeur appelées labels. Chaque combinaison unique de nom de métrique et d'étiquettes forme une série chronologique distincte.

Vecteur instantané

Un ensemble de séries chronologiques contenant un seul échantillon pour chaque série, toutes partageant le même horodatage. Renvoyé par des requêtes telles que{"http.server.active_requests", "@resource.service.name"="myservice"}.

Vecteur de portée

Ensemble de séries chronologiques contenant une gamme de points de données au fil du temps pour chaque série. Créé en ajoutant un sélecteur de durée entre crochets, par exemple,. avg_over_time({"http.server.active_requests", "@resource.service.name"="myservice"}[5m])

Étiquette

Une paire clé-valeur attachée à une série chronologique. Dans OTLP-ingested les métriques, les étiquettes sont dérivées des attributs des ressources, de la portée de l'instrumentation, des attributs des points de données et des métadonnées AWS spécifiques.

Matcher d'étiquettes

Expression entre accolades qui filtre les séries chronologiques par valeur d'étiquette. Supporte la correspondance exacte (=), la correspondance non égale (!=), la correspondance regex (=~) et la correspondance regex négative (!~).

Opérateur d'agrégation

Fonction qui combine plusieurs séries chronologiques en un nombre réduit de séries. Les opérateurs courants incluent sum avgmin,max,count, ettopk.

Limites et restrictions de ProMQL

Le tableau suivant répertorie les limites et restrictions de ProMQL :

Limite Value Informations supplémentaires Code d’erreur

TPS maximum pour les demandes de requête par compte

300

Nombre maximum de requêtes (/query, /query_range) autorisées par seconde par compte.

422

TPS maximal pour les demandes de découverte par compte

10

Nombre maximum de demandes de découverte (/series, /label, /label_values) autorisées par seconde par compte.

422

Nombre maximal de requêtes simultanées par compte

30

Nombre maximum de requêtes (/query, /query_range) qu'un compte peut exécuter activement en même temps.

429

Nombre maximal de demandes de découverte simultanées par compte

30

Nombre maximum de demandes de découverte (/series, /labels, /label_values) qu'un compte peut exécuter activement en même temps.

429

Nombre maximum de séries renvoyées par demande de requête

500

Nombre maximal de séries chronologiques uniques qu'une demande de requête (/query, /query_range) peut renvoyer.

200 - réponse tronquée

Nombre maximum d'étiquettes renvoyées par demande de découverte

10 000

Nombre maximum d'étiquettes uniques qu'une demande de découverte (/series, /labels, /label_values) peut renvoyer.

200 - réponse tronquée

Portée maximale par demande

7 jours

Plage de temps maximale qu'une requête peut couvrir, y compris les paramètres de plage et les périodes de rétrospective.

422

Nombre maximum de séries numérisées par fenêtre de 24 heures

100 000

Nombre maximal de séries chronologiques uniques pouvant être scannées par fenêtre de 24 heures d'exécution des requêtes.

422

Nombre maximum d'échantillons scannés par fenêtre de 24 heures

300 000 000

Nombre maximum d'échantillons pouvant être scannés par fenêtre de 24 heures d'exécution des requêtes.

422

Nombre maximum d'échantillons traités par fenêtre de 24 heures

3 000 000 000

Nombre maximum d'échantillons pouvant être traités par fenêtre d'exécution de requête de 24 heures.

422

Execution timeout (Délai d'exécution)

20 secondes

Durée maximale que le moteur peut consacrer à l'évaluation d'une requête, à l'exception du temps passé dans la file d'attente et à récupérer des données depuis le stockage.

422

Pris en charge AWS Régions

Le tableau suivant répertorie les AWS régions dans lesquelles l'ingestion de métriques OTLP, les requêtes ProMQL et Query Studio sont disponibles.

Nom de la région Code région Ingestion des métriques OTLP Requête ProMQL Studio de requêtes

USA Est (Virginie du Nord)

us-east-1

USA Ouest (Oregon)

us-west-2

Europe (Irlande)

eu-west-1

Asie-Pacifique (Singapour)

ap-southeast-1

Asie-Pacifique (Sydney)

ap-southeast-2

USA Ouest (Californie du Nord)

us-west-1

USA Est (Ohio)

us-east-2

Europe (Londres)

eu-west-2

Europe (Paris)

eu-west-3

Europe (Francfort)

eu-central-1

Europe (Stockholm)

eu-north-1

Europe (Milan)

eu-south-1

Europe (Espagne)

eu-south-2

Europe (Zurich)

eu-central-2

Asie-Pacifique (Tokyo)

ap-northeast-1

Asie-Pacifique (Séoul)

ap-northeast-2

Asie-Pacifique (Osaka)

ap-northeast-3

Asie-Pacifique (Mumbai)

ap-south-1

Asie-Pacifique (Hyderabad)

ap-south-2

Asie-Pacifique (Hong Kong)

ap-east-1

Asie-Pacifique (Taipei)

ap-east-2

Asie-Pacifique (Jakarta)

ap-southeast-3

Asie-Pacifique (Melbourne)

ap-southeast-4

Asie-Pacifique (Malaisie)

ap-southeast-5

Asie-Pacifique (Auckland)

ap-southeast-6

Asie-Pacifique (Thaïlande)

ap-southeast-7

Amérique du Sud (São Paulo)

sa-east-1

Canada (Centre)

ca-central-1

Canada-Ouest (Calgary)

ca-west-1

Afrique (Le Cap)

af-south-1

Mexique (Centre)

mx-central-1

Autorisations IAM pour ProMQL

Pour exécuter des requêtes ProMQL, vous avez besoin à la fois d'autorisations cloudwatch:GetMetricData et cloudwatch:ListMetrics d'autorisations. Le tableau suivant répertorie les chemins des points de terminaison d' Prometheus-compatible API et leurs actions IAM requises :

Chemin de terminaison de l'API Méthodes HTTP Actions requises

/api/v1/query

OBTENIR, PUBLIER

cloudwatch:GetMetricData, cloudwatch:ListMetrics

/api/v1/query_range

OBTENIR, PUBLIER

cloudwatch:GetMetricData, cloudwatch:ListMetrics

/api/v1/series

OBTENIR, PUBLIER

cloudwatch:ListMetrics

/api/v1/labels

OBTENIR, PUBLIER

cloudwatch:ListMetrics

/api/v1/label/label_name/values

GET

cloudwatch:ListMetrics