0

J'écris des scripts de déploiement en Python à l'aide de boto3 pour une passerelle API. Le script va créer l'API, les ressources, les méthodes et le déploiement. Quand je regarde dans la console de gestion AWS il y a une case à cocher pour Enable CloudWatch LogsAWS API Gateway Activer les journaux Cloudwatch via Boto3

CLoudWatch Logs Option

est-il un moyen d'activer cette via boto3 ou l'API REST? Je n'ai vu aucune option dans la documentation pour cela.

Répondre

1

Disponible en update_stage dans boto3 (http://boto3.readthedocs.io/en/latest/reference/services/apigateway.html#APIGateway.Client.update_stage)

Les chemins de patch sont documentées ici https://docs.aws.amazon.com/apigateway/api-reference/link-relation/stage-update/

Vous pouvez utiliser une opération de patch comme ci-dessous pour configurer la connexion haut niveau sur toutes les ressources/méthodes

{ "patchOperations" : [ 
    { 
     "op" : "replace", 
     "path" : "/*/*/logging/loglevel", 
     "value" : "INFO" 
    }, 
    } 
1

Le paramètre de journal cloudwatch que vous recherchez est associé à une ressource d'étape. Dans votre cas, vous devez utiliser la méthode update_stage dans boto3 pour appliquer une opération de correction afin de définir le niveau de journalisation approprié.

De Boto docs:

LoggingLevel (string) -

Indique le niveau de journalisation pour cette méthode, qui effectue le journal entrées poussé à Amazon CloudWatch journaux. Le chemin PATCH pour ce paramètre est/{method_setting_key}/logging/loglevel et les niveaux disponibles sont OFF, ERROR et INFO.

Voici la link à la référence de l'API REST de l'étape de mise à jour.