Comment déterminer la limitation dans mes journaux CloudWatch Logs ?
Je reçois u une erreur « RequestLimitExceeded » ou « ThrottlingException » lorsque je travaille avec des journaux Amazon CloudWatch, et mon appel d'API est limité.
Brève description
Lorsque vous travaillez avec des journaux CloudWatch, vous pouvez dépasser la limite de débit de l'API. Lorsque cela se produit, vous recevez une erreur RequestLimitExceeded ou ThrottlingException, et votre appel d'API est limité. Vous devez identifier où et quand la limitation se produit afin de pouvoir résoudre ces erreurs et faire des demandes d'augmentation des limites de débit de manière réfléchie.
Solution
Limitation intermittente des journaux CloudWatch lors de l'accès aux journaux
Vous pouvez utiliser FilterLogEvents ou GetLogEvents pour répertorier vos événements de journaux ou vos flux de journaux. Ces appels d'API ont une limite stricte et ils ne sont pas éligibles à une augmentation des limites. Cela signifie que si vous utilisez l'API FilterLogEvents pour rechercher des événements de journaux à partir d'un groupe de journaux spécifié, le quaAPI par défaut a un quota par défaut. Ce devis correspond à 5 transactions par seconde (TPS) par compte ou région AWS. Si vous atteignez cette limite, vous recevez l'erreur RateExceeded.
Utilisez ces bonnes pratiques pour éviter les erreurs de limitation dans ce cas d'utilisation :
- Utilisez un filtre d'abonnement pour récupérer immédiatement les données de journaux à partir des journaux CloudWatch en temps réel. Pour plus d'informations, consultez Utilisation de filtres d'abonnement CloudWatch Logs et Traitement en temps réel des données du journal avec les abonnements.
- Utilisez CloudWatch Logs Insights pour obtenir rapidement les données de journaux à partir des journaux CloudWatch. Utilisez des requêtes pour filtrer vos journaux afin d'afficher des groupes de journaux spécifiques.
- Exporter les données de journaux vers Amazon Simple Storage Service (Amazon S3) pour les cas d'utilisation par lots.
Remarque : Les données de journaux peuvent prendre jusqu'à douze heures pour être disponibles à l'exportation à partir de CloudWatch Logs. Il n'est donc pas recommandé d'utiliser cette méthode pour l'analyse et le traitement en temps réel.
Erreurs ThrottlingException lors de l'utilisation d'une application/d'un script pour récupérer les données dans le journal CloudWatch
Pour collecter les journaux CloudWatch, vous pouvez développer un collecteur de scripts. Ce script tente d'effectuer un appel d'API DescribeLogStream ou GetLogEvents pour extraire des données de différents flux de journaux ou de différentes périodes dans le même groupe de journaux. Les appels d'API tels que FilterLogEvents, GetLogEvents et DescribeLogStreams sont conçus pour l'interaction humaine et non pour l'automatisation. Cela signifie que vous recevez une erreur et que l'appel d'API est limité.
Utilisez ces bonnes pratiques pour éviter la limitation dans ce cas d'utilisation :
- Utilisez le backoff exponentiel et les nouvelles tentatives lorsque vous effectuez un appel d'API. Pour plus d'informations, consultez les sections Backoff exponentiel et gigue et Nouvelles tentatives après erreur et backoff exponentiel dans AWS.
- Distribuez vos appels d'API au fil du temps. Planifiez des actions avec une certaine randomisation afin qu'elles soient réparties sur une période de temps.
- Ajoutez des intervalles de repos entre les appels d'API consécutifs. Ajoutez un certain délai entre les appels d'API envoyés depuis le même script ou la même application. Si vous envoyez des appels d'API en succession rapide, des erreurs de débits sont plus susceptibles de se produire.
- Dans certains cas, vous pouvez utiliser une solution SIEM telle que Splunk pour récupérer les journaux depuis CloudWatch. Les solutions SIEM sont utilisées pour collecter des données provenant de plusieurs systèmes et analyser ces données afin de détecter un comportement inhabituel. Vous pouvez rencontrer des limitations d'API lorsque vous utilisez le plugin Splunk. Pour éviter ce problème, créez un filtre d'abonnement aux journaux CloudWatch avec Amazon Kinesis Data Firehose et envoyez les données de journaux à Splunk. Pour plus d'informations, consultez la documentation de Splunk pour Configurer les entrées Kinesis pour le module complémentaire Splunk pour AWS (Langue Français non garanti).
Erreurs de limitation lors de l'intégration des appels d'API PutLogEvents avec la fonction Lambda
L'appel d'API PutLogEvents est utilisé pour charger les journaux dans un flux de journaux spécifié par lots de 1 Mo. Cette API a une limite de débit de 800 TPS, par compte et par région. Cela s'applique sauf pour les régions suivantes où le quota est de 1500 TPS, par compte et par région : USA Est (Virginie du Nord), USA Ouest (Oregon) et Europe (Irlande). Vous pouvez demander une augmentation des quotas.
Pour plus d'informations à ce sujet et pour demander une augmentation des quotas, consultez la section Quotas CloudWatch Logs.
Gérer vos quotas de service CloudWatch Logs
AWS définit des quotas pour les services afin de protéger les performances et de garantir la disponibilité. CloudWatch dispose de quotas pour les métriques, les alarmes, les demandes d'API et les notifications d'alarme par e-mail. Suivez ces étapes pour visualiser vos quotas de service et définir des alarmes si vous atteignez le seuil :
1. Connectez-vous à la console Service Quotas.
2. Dans le panneau de navigation, choisissez AWS services (Services AWS).
3. Dans la liste des services AWS, recherchez Amazon CloudWatch Logs.
4. La liste Quotas de service, vous propose différents attributs ou options : le nom du quota de service, la valeur appliquée (si elle est disponible), le quota AWS par défaut et si la valeur du quota est ajustable.
5. Pour afficher plus d'informations sur un quota de service, comme sa description, choisissez le nom du quota.
6. Une fois que vous avez choisi le nom du quota, vous pouvez voir plus d'informations sur ce quota. Par exemple, si vous choisissez la limite GetLogEvents dans les transactions par seconde, vous voyez les éléments suivants :
Description
Code de quota
ARN de quota
Utilisation : %
Valeur du quota appliqué
Valeur du quota AWS par défaut
Ajustable : O/N
7. Dans la section Alarmes Amazon CloudWatch, choisissez Créer une alarme, puis saisissez un seuil d'alarme et un nom d'alarme.
Informations connexes
Comment éviter les limitations lorsque j'appelle PutMetricData dans l'API CloudWatch ?

Contenus pertinents
- demandé il y a 2 moislg...
- demandé il y a 5 moislg...
- demandé il y a 2 moislg...
- demandé il y a un moislg...
- demandé il y a 5 moislg...
- AWS OFFICIELA mis à jour il y a 10 mois
- AWS OFFICIELA mis à jour il y a un an
- AWS OFFICIELA mis à jour il y a 3 mois
- AWS OFFICIELA mis à jour il y a un an