Collecter des métriques AWS CloudWatch à l'aide de l'exportateur Prometheus CloudWatch
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
La collecte de métriques AWS CloudWatch avec l'exportateur Prometheus CloudWatch et l'agent Ops vous permet de surveiller les ressources AWS et Google Cloud ensemble dans les tableaux de bord et les règles d'alerte Cloud Monitoring. Par exemple, vous pouvez représenter graphiquement l'utilisation du processeur pour vos instances Amazon EC2 et vos VM Compute Engine.
Pour collecter des métriques AWS CloudWatch à l'aide de l'exportateur Prometheus CloudWatch, vous avez besoin des éléments suivants :
Un projet Google Cloud avec les autorisations nécessaires pour effectuer les opérations suivantes :
Créer une VM
Écrire des journaux dans Cloud Logging
Écrire des métriques dans Cloud Monitoring
Un compte AWS avec des identifiants AWS pouvant être utilisés par l'exportateur Prometheus pour récupérer des métriques.
Pour en savoir plus, consultez Exécuter l'exportateur Prometheus.
Créer une VM Compute Engine
Nous vous recommandons de créer une VM Linux Compute Engine à utiliser spécifiquement pour exécuter l'agent Ops et l'exportateur Prometheus CloudWatch. Cette VM sert de site de collecte pour toutes les métriques AWS.
Pour créer une VM Debian Linux nommée aws-exporter-test dans une zone que vous spécifiez, exécutez la commande suivante :
Les sections suivantes décrivent la procédure de téléchargement, d'installation et de configuration de l'exportateur Prometheus CloudWatch sur votre VM Compute Engine.
Télécharger l'exportateur Prometheus et l'environnement d'exécution Java (JRE)
Pour exécuter l'exportateur Prometheus CloudWatch, vous devez télécharger l'exportateur et l'environnement d'exécution Java (JRE), version 11 ou ultérieure.
Pour télécharger le fichier JAR contenant l'exportateur CloudWatch pour Prometheus, exécutez la commande suivante sur votre instance Compute Engine :
Pour installer le JRE, vous pouvez utiliser une commande comme celle-ci :
sudo apt install default-jre
Configurer l'exportateur Prometheus
Pour configurer l'exportateur Prometheus CloudWatch, vous devez créer un fichier de configuration pour le ou les services AWS dont vous souhaitez collecter les métriques.
Pour obtenir des informations générales, consultez la documentation de configuration de l'exportateur Prometheus CloudWatch.
Utilisateurs effectuant une migration : si vous migrez vos métriques AWS CloudWatch existantes vers l'exportateur Prometheus CloudWatch, vous pouvez utiliser les fichiers de configuration de la section Configurations de l'exportateur Prometheus CloudWatch pour la migration.
Ces fichiers de configuration sont conçus pour répliquer les métriques existantes aussi fidèlement que possible, mais ils ne collectent pas toutes les métriques disponibles à l'aide de l'exportateur Prometheus CloudWatch pour les services AWS.
Nouveaux utilisateurs : si vous ne migrez pas de métriques existantes, nous vous recommandons de ne pas utiliser les configurations de migration. Consultez la documentation du service AWS CloudWatch pour savoir comment définir des configurations d'exportateur pour d'autres services. Vous trouverez également d'autres exemples dans le dépôt GitHub de l'exportateur Prometheus CloudWatch.
Vous pouvez combiner la configuration de plusieurs services AWS dans un seul fichier de configuration. Les exemples de ce document supposent que votre fichier de configuration s'appelle config.yml.
Exécuter l'exportateur Prometheus
Avant de pouvoir exécuter l'exportateur Prometheus CloudWatch, vous devez lui fournir des identifiants et une autorisation.
L'exportateur Prometheus CloudWatch utilise le SDK AWS Java, qui permet de fournir des identifiants à l'aide des variables d'environnement suivantes :
Pour en savoir plus sur la fourniture d'identifiants au SDK, consultez SDK AWS pour Java 2.x.
Vous devez également disposer de l'autorisation d'utiliser l'API CloudWatch pour récupérer les métriques. Vous avez besoin des autorisations CloudWatch IAM AWS suivantes :
cloudwatch:ListMetrics
cloudwatch:GetMetricStatistics
cloudwatch:GetMetricData
L'utilisation de la fonctionnalité aws_tag_select nécessite également l'autorisation AWS IAM tag:GetResources.
Remplacez les variables YOUR_KEY par vos clés d'accès.
Vous ne devez définir la variable d'environnement AWS_SESSION_TOKEN que si vous utilisez des identifiants temporaires.
Pour tester votre configuration en démarrant l'exportateur et en chargeant votre fichier de configuration, exécutez la commande suivante :
Modifiez les valeurs du port (9106) et du fichier de configuration (config.yml) si nécessaire.
Si vous modifiez votre fichier config.yml pendant que l'exportateur est en cours d'exécution, vous pouvez le recharger en exécutant la commande suivante :
curl -X POST localhost:9106/-/reload
Pour une utilisation dans un environnement de production, vous pouvez configurer l'exportateur pour qu'il redémarre si la VM redémarre. Par exemple, sur les systèmes Debian, vous pouvez utiliser le gestionnaire de système et de services systemd.
Configurer l'agent Ops
Les sections suivantes expliquent comment installer, configurer et démarrer l'agent Ops. Ces sections fournissent des informations de configuration minimales pour l'agent Ops à utiliser avec l'exportateur Prometheus CloudWatch.
Pour en savoir plus sur ces sujets, consultez la présentation de l'agent Ops.
Installer l'agent Ops
Pour installer l'agent Ops, utilisez les commandes suivantes pour télécharger et exécuter le script d'installation de l'agent :
Pour configurer l'agent Ops, vous devez ajouter des éléments de configuration au fichier de configuration utilisateur de l'agent. Sous Linux, le fichier de configuration utilisateur est /etc/google-cloud-ops-agent/config.yaml.
Lorsque vous configurez l'agent Ops pour collecter des métriques AWS à partir de l'exportateur Prometheus CloudWatch, vous utilisez le récepteur Prometheus de l'agent. Ce document décrit deux configurations de base pour l'agent Ops.
Sélectionnez l'une des configurations et ajoutez-la au fichier de configuration utilisateur :
sudo vim /etc/google-cloud-ops-agent/config.yaml
Configuration de base de l'agent Ops
La configuration suivante fournit une configuration minimale pour l'agent Ops. Cette configuration effectue les opérations suivantes :
Crée un récepteur nommé aws de type prometheus. Le récepteur est configuré pour scraper les métriques du job aws_exporter. Le port spécifié doit correspondre au port sur lequel l'exportateur Prometheus CloudWatch exporte les métriques. Consultez Exécuter l'exportateur Prometheus.
Crée un pipeline nommé aws_pipeline qui utilise le récepteur de métriques aws.
La configuration suivante effectue toutes les opérations de la configuration de base, mais ajoute également une configuration de réétiquetage qui supprime les métriques JVM générées par l'exportateur. La suppression de ces métriques réduit les données de métriques ingérées, mais peut compliquer le débogage des problèmes liés à l'exportateur, car vous n'obtenez pas les métriques de l'exportateur :
metrics:
receivers:
aws:
type: prometheus
config:
scrape_configs:
- job_name: 'aws_exporter'
scrape_interval: 10s
static_configs:
- targets: ['localhost:9106']
# Drop the exporter's own JVM metrics to reduce noise.
metric_relabel_configs:
- source_labels: [ __name__ ]
regex: 'jvm_.*'
action: drop
service:
pipelines:
aws_pipeline:
receivers:
- aws
Vous pouvez créer des configurations beaucoup plus complexes pour l'agent Ops.
Pour obtenir des informations générales sur la configuration de l'agent Ops, consultez la page Modèle de configuration.
Redémarrer l'agent Ops
Pour appliquer les modifications de configuration à l'agent Ops, vous devez le redémarrer.
Pour redémarrer l'agent, exécutez la commande suivante sur votre instance :
sudo service google-cloud-ops-agent restart
Pour vérifier que l'agent a redémarré, exécutez la commande suivante et vérifiez que les composants "Agent de métriques" et "Agent de journalisation" ont démarré :
sudo systemctl status google-cloud-ops-agent"*"
Afficher les métriques dans Cloud Monitoring
Dans Cloud Monitoring, vous pouvez interroger vos métriques AWS CloudWatch et créer des graphiques comme vous le feriez pour n'importe quelle autre métrique. Dans l'interface de l'explorateur de métriques, vous pouvez utiliser PromQL ou une interface de générateur de requêtes. Pour plus d'informations, consultez la page Créer des graphiques avec l'explorateur de métriques.
Si vous avez créé des graphiques que vous souhaitez conserver, vous pouvez les enregistrer dans des tableaux de bord personnalisés. Pour en savoir plus, consultez Présentation des tableaux de bord.
Le graphique suivant montre une requête PromQL pour la métrique aws_ec2_cpuutilization_sum pour les VM AWS :
Dans Cloud Monitoring, vous pouvez créer des règles d'alerte pour surveiller vos métriques AWS CloudWatch et vous avertir des pics, des baisses ou des tendances des valeurs de métriques.
Pour en savoir plus sur l'utilisation de l'interface du générateur de requêtes pour créer des règles d'alerte, consultez Créer des règles d'alerte.
Surveiller plusieurs régions
La configuration de l'exportateur Prometheus CloudWatch n'accepte qu'une seule région par fichier de configuration. Si vous devez surveiller plusieurs régions, nous vous recommandons d'exécuter plusieurs instances de l'exportateur Prometheus, une configurée pour chaque région que vous souhaitez surveiller. Vous pouvez exécuter plusieurs exportateurs sur une même VM ou les répartir sur plusieurs VM. Les images Docker de l'exportateur Prometheus peuvent être utiles dans ce cas.
Vous pouvez configurer l'agent Ops s'exécutant sur la VM Compute Engine pour scraper plusieurs points de terminaison Prometheus. Lorsque vous configurez plusieurs instances de l'exportateur Prometheus, nous vous recommandons d'utiliser un nom job différent dans la configuration de scraping pour chacune d'elles. Vous pourrez ainsi distinguer les instances de l'exportateur si vous devez les dépanner.
Pour en savoir plus sur la configuration de l'agent Ops et du récepteur Prometheus, consultez Configurer l'agent Ops.
Coût
Amazon facture chaque requête API CloudWatch ou chaque métrique CloudWatch que vous demandez. Pour connaître les tarifs actuels, consultez la page Tarifs d'Amazon CloudWatch. L'exportateur Prometheus CloudWatch présente les caractéristiques de requête suivantes, qui peuvent avoir une incidence sur vos coûts Amazon :
Lorsque vous utilisez la méthode GetMetricStatistics (par défaut), chaque métrique nécessite une requête API. Chaque requête peut inclure plusieurs statistiques.
Lorsque vous utilisez aws_dimensions, l'exportateur doit effectuer des requêtes API pour déterminer les métriques à demander. Le nombre de requêtes de dimension est généralement négligeable par rapport au nombre de requêtes de métrique.
Cloud Monitoring facture les métriques AWS CloudWatch de l'exportateur Prometheus en fonction du nombre d'échantillons ingérés. Pour connaître les tarifs actuels, consultez les sections Cloud Monitoring de la page Tarifs de Google Cloud Observability.
Configurations de l'exportateur Prometheus CloudWatch pour la migration
Cette section fournit des configurations qui répliquent, aussi fidèlement que possible, les métriques de service AWS documentées dans la liste des métriques AWS. Ces fichiers de configuration sont destinés aux clients qui migrent vers l'exportateur Prometheus CloudWatch à partir de l'ancienne solution. Si vous configurez l'exportateur Prometheus CloudWatch en tant que nouvel utilisateur plutôt qu'en tant qu'utilisateur migrant et que vous utilisez ces configurations, vous ne collectez pas toutes les métriques AWS mises à disposition par l'exportateur Prometheus CloudWatch.
Pour afficher un exemple de fichier de configuration pour les métriques AWS CloudWatch, développez l'une des sections suivantes.
region: us-east-1
metrics:
- aws_dimensions:
- QueueName
aws_metric_name: NumberOfMessagesSent
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
- aws_dimensions:
- QueueName
aws_metric_name: NumberOfMessagesReceived
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
- aws_dimensions:
- QueueName
aws_metric_name: NumberOfEmptyReceives
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
- aws_dimensions:
- QueueName
aws_metric_name: NumberOfMessagesDeleted
aws_namespace: AWS/SQS
aws_statistics:
- Average
- aws_dimensions:
- QueueName
aws_metric_name: ApproximateNumberOfMessagesDelayed
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
- aws_dimensions:
- QueueName
aws_metric_name: ApproximateAgeOfOldestMessage
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
- aws_dimensions:
- QueueName
aws_metric_name: ApproximateNumberOfMessagesNotVisible
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
- aws_dimensions:
- QueueName
aws_metric_name: ApproximateNumberOfMessagesVisible
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
- aws_dimensions:
- QueueName
aws_metric_name: SentMessageSize
aws_namespace: AWS/SQS
aws_statistics:
- Average
- Minimum
- Maximum
- SampleCount
- Sum
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2026/10/22 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2026/10/22 (UTC)."],[],[]]