Lorsque j'essaie de créer une ressource AWS, le message d'erreur d’Amazon CloudWatch « Unable to enable logging. Policy document length breaking Cloudwatch Logs Constraints. » (Impossible d’activer la journalisation. La longueur du document de politique dépasse les contraintes de Cloudwatch Logs.) s’affiche.
Brève description
Lorsque vous activez CloudWatch Logs pour vos services AWS ou que vous créez une nouvelle ressource AWS, le message d'erreur suivant peut s'afficher :
« Unable to enable logging. Policy document length breaking Cloudwatch Logs Constraints »
Les politiques de ressources de CloudWatch ont une longueur de caractères maximale autorisée de 5 120 caractères. Lorsque votre politique comporte plus de 5 120 caractères, l'erreur précédente s'affiche. Vous pouvez consulter les détails de l'erreur dans l'historique des événements AWS CloudTrail.
Résolution
Remarque : Si des erreurs surviennent lorsque vous exécutez des commandes de l'interface de la ligne de commande AWS (AWS CLI), consultez la section Résoudre des erreurs liées à l’AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l'interface.
Vous pouvez utiliser uniquement l'interface de ligne de commande AWS pour vérifier les politiques de ressources de CloudWatch.
Pour vérifier vos politiques de ressources actuelles et les modifier, procédez comme suit :
-
Exécutez la commande describe-resource-policies de l’AWS CLI pour vérifier vos politiques de ressources CloudWatch actuelles :
aws logs describe-resource-policies --region-name > resource.json
-
Enregistrez la sortie dans un fichier JSON nommé resource.json.
-
Copiez la politique AWSLogDeliveryWrite20150319 à partir de resource.json, puis collez-la dans un éditeur de texte.
-
Pour réduire le nombre de caractères de votre politique, procédez comme suit :
Supprimez les entrées que vous n'utilisez pas, telles que les ressources et les flux de journaux.
Remplacez les ARN de ressources par le caractère générique *.
Associez une nouvelle politique de ressources dotée des autorisations requises.
-
Exécutez la commande put-resource-policy de l’AWS CLI pour remplacer la politique de ressources AWSLogDeliveryWrite20150319 par votre version modifiée dans resource.json :
aws logs put-resource-policy --policy-document file://resource.json --policy-name AWSLogDeliveryWrite20150319
Lorsque vous ajoutez la nouvelle politique de ressources, le message d'erreur suivant peut s'afficher en lien avec les quotas CloudWatch :
« Error: creating CloudWatch Logs Resource Policy (name): operation error CloudWatch Logs: PutResourcePolicy, exceeded maximum number of attempts, https response error StatusCode: 400, RequestID: 3d123ce1-f123-4d12-12b8-abc1234ba1a9, LimitExceededException: Resource limit exceeded. »
Vous pouvez avoir un maximum de 10 politiques de ressources CloudWatch Logs dans votre compte AWS pour chaque région AWS. Vous ne pouvez pas modifier ce quota. Pour résoudre ce problème, exécutez la commande delete-resource-policy de l’AWS CLI pour supprimer une politique existante :
aws logs delete-resource-policy --policy-name POLICY_NAME
Lorsque votre région compte moins de 10 politiques de ressources, vous pouvez créer une nouvelle politique de ressources.
Informations connexes
Affichage des événements de gestion récents à l'aide de la console
Quotas CloudWatch Logs
Activer la journalisation à partir des services AWS