Exemples d’utilisation de l’AWS CLI avec CloudWatch Synthetics
Les exemples de code suivants montrent comment réaliser des actions et mettre en œuvre des scénarios courants en utilisant l’AWS Command Line Interface avec CloudWatch Synthetics.
Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.
Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.
Rubriques
Actions
L’exemple de code suivant montre comment utiliser associate-resource.
- AWS CLI
-
Pour associer un canary à un groupe
L’exemple
associate-resourcesuivant associe un canary à un groupe nommédemo_group.aws synthetics associate-resource \ --group-identifierdemo_group\ --resource-arnarn:aws:synthetics:us-east-1:123456789012:canary:demo_canaryCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez AssociateResource
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser create-canary.
- AWS CLI
-
Pour créer un script Canary
L’exemple
create-canarysuivant crée un canary nommédemo_canary.aws synthetics create-canary \ --namedemo_canary\ --code '{"S3Bucket": "artifacts3bucket", "S3Key":"demo_canary.zip", "Handler": "index.lambda_handler"}' \ --artifact-s3-locations3://amzn-s3-demo-bucket/demo_canary.zip\ --execution-role-arnarn:aws:iam::123456789012:role/demo_canary_role\ --schedule Expression="rate(10 minutes)" \ --runtime-versionsyn-nodejs-puppeteer-9.1Sortie :
{ "Canary": { "Id": "a1b2c3d4-5678-90ab-cdef-example11111", "Name": "demo_canary", "Code": { "Handler": "index.lambda_handler" }, "ExecutionRoleArn": "arn:aws:iam::123456789012:role/demo_canary_role", "Schedule": { "Expression": "rate(10 minutes)", "DurationInSeconds": 0 }, "RunConfig": { "TimeoutInSeconds": 600, "MemoryInMB": 1000, "ActiveTracing": false }, "SuccessRetentionPeriodInDays": 31, "FailureRetentionPeriodInDays": 31, "Status": { "State": "CREATING", "StateReasonCode": "CREATE_PENDING" }, "Timeline": { "Created": "2024-10-15T19:03:08.826000+05:30", "LastModified": "2024-10-15T19:03:08.826000+05:30" }, "ArtifactS3Location": "amzn-s3-demo-bucket/demo_canary.zip", "RuntimeVersion": "syn-nodejs-puppeteer-9.1", "Tags": {} } }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez CreateCanary
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser create-group.
- AWS CLI
-
Pour créer un groupe
L’exemple
create-groupsuivant crée un groupe nommédemo_group.aws synthetics create-group \ --namedemo_groupSortie :
{ "Group": { "Id": "example123", "Name": "demo_group", "Arn": "arn:aws:synthetics:us-east-1:123456789012:group:example123", "Tags": {}, "CreatedTime": "2024-10-15T14:47:23.811000+05:30", "LastModifiedTime": "2024-10-15T14:47:23.811000+05:30" } }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez CreateGroup
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser delete-canary.
- AWS CLI
-
Pour supprimer définitivement un canary
L’exemple
delete-canarysuivant supprime un canary nommédemo_canary.aws synthetics delete-canary \ --namedemo_canaryCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez DeleteCanary
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser delete-group.
- AWS CLI
-
Pour supprimer un groupe
L’exemple
delete-groupsuivant supprime un groupe nommédemo_group.aws synthetics delete-group \ --group-identifierdemo_groupCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez DeleteGroup
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser describe-canaries-last-run.
- AWS CLI
-
Pour consulter les informations relatives à la dernière exécution de chaque canary
L’exemple
describe-canaries-last-runsuivant renvoie la dernière exécution de chaque canary que vous avez créé.aws synthetics describe-canaries-last-runSortie :
{ "CanariesLastRun": [ { "CanaryName": "demo_canary", "LastRun": { "Id": "a1b2c3d4-5678-90ab-cdef-example11111", "Name": "demo_canary", "Status": { "State": "PASSED", "StateReason": "", "StateReasonCode": "" }, "Timeline": { "Started": "2024-10-15T19:20:39.691000+05:30", "Completed": "2024-10-15T19:20:58.211000+05:30" }, "ArtifactS3Location": "cw-syn-results-123456789012-us-east-1/canary/us-east-1/demo_canary-abc-example1234/2024/10/15/13/50-39-690" } } ] }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez DescribeCanariesLastRun
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser describe-canaries.
- AWS CLI
-
Pour répertorier les scripts Canary de votre compte
L’exemple
describe-canariessuivant répertorie les informations sur les scripts Canary de votre compte.aws synthetics describe-canariesSortie :
{ "Canaries": [ { "Id": "a1b2c3d4-5678-90ab-cdef-example11111", "Name": "demo_canary", "Code": { "SourceLocationArn": "arn:aws:lambda:us-east-1:123456789012:layer:cwsyn-demo_canary-a1b2c3d4-5678-90ab-cdef-example11111b8:1", "Handler": "pageLoadBlueprint.handler" }, "ExecutionRoleArn": "arn:aws:iam::123456789012:role/service-role/CloudWatchSyntheticsRole-demo_canary-a12-a123bc456789", "Schedule": { "Expression": "rate(5 minutes)", "DurationInSeconds": 0 }, "RunConfig": { "TimeoutInSeconds": 300, "MemoryInMB": 1000, "ActiveTracing": false }, "SuccessRetentionPeriodInDays": 31, "FailureRetentionPeriodInDays": 31, "Status": { "State": "RUNNING" }, "Timeline": { "Created": "2024-10-15T18:55:15.168000+05:30", "LastModified": "2024-10-15T18:55:40.540000+05:30", "LastStarted": "2024-10-15T18:55:40.540000+05:30" }, "ArtifactS3Location": "cw-syn-results-123456789012-us-east-1/canary/us-east-1/demo_canary-a12-a123bc456789", "EngineArn": "arn:aws:lambda:us-east-1:123456789012:function:cwsyn-demo_canary-a1b2c3d4-5678-90ab-cdef-example111118:1", "RuntimeVersion": "syn-nodejs-puppeteer-9.1", "Tags": { "blueprint": "heartbeat" } } ] }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez DescribeCanaries
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser describe-runtime-versions.
- AWS CLI
-
Pour renvoyer la liste des versions d’exécution des scripts Canary Synthetics
L’exemple
describe-runtime-versionssuivant renvoie la liste des versions d’exécution des scripts Canary Synthetics.aws synthetics describe-runtime-versionsSortie :
{ "RuntimeVersions": [ { "VersionName": "syn-nodejs-puppeteer-9.1", "Description": "Security fixes and bug fix for date range error in har. Dependencies: Node JS 20.x, Puppeteer-core 22.12.1, Chromium 126.0.6478.126", "ReleaseDate": "2024-10-02T05:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-9.0", "Description": "Upgraded Chromium and Puppeteer. Dependencies: Node JS 20.x, Puppeteer-core 22.12.1, Chromium 126.0.6478.126", "ReleaseDate": "2024-07-22T05:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-8.0", "Description": "Upgraded Chromium and Puppeteer. Dependencies: Node JS 20.x, Puppeteer-core 22.10.0, Chromium 125.0.6422.112", "ReleaseDate": "2024-06-21T05:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-7.0", "Description": "Upgraded Chromium and Puppeteer. Dependencies: Node JS 18.x, Puppeteer-core 21.9.0, Chromium 121.0.6167.139", "ReleaseDate": "2024-03-08T05:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-6.2", "Description": "Updated shared libraries for Chromium and added ephemeral storage monitoring. Dependencies: Node JS 18.x, Puppeteer-core 19.7.0, Chromium 111.0.5563.146", "ReleaseDate": "2024-02-02T05:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-6.1", "Description": "Added puppeteer launch retry. Dependencies: Node JS 18.x, Puppeteer-core 19.7.0, Chromium 111.0.5563.146", "ReleaseDate": "2023-11-13T05:30:00+05:30", "DeprecationDate": "2024-03-08T13:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-6.0", "Description": "Reduced X-Ray traces of a canary run, improved duration metric and upgraded to NodeJS 18.x. Dependencies: Node JS 18.x, Puppeteer-core 19.7.0, Chromium 111.0.5563.146", "ReleaseDate": "2023-09-15T05:30:00+05:30", "DeprecationDate": "2024-03-08T13:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-5.2", "Description": "Updated shared libraries for Chromium. Dependencies: Node JS 16.x, Puppeteer-core 19.7.0, Chromium 111.0.5563.146", "ReleaseDate": "2024-02-01T05:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-5.1", "Description": "Fixes a bug about missing request headers in har. Dependencies: Node JS 16.x, Puppeteer-core 19.7.0, Chromium 111.0.5563.146", "ReleaseDate": "2023-08-09T05:30:00+05:30", "DeprecationDate": "2024-03-08T13:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-5.0", "Description": "Upgraded Puppeteer and Chromium. Dependencies: Node JS 16.x, Puppeteer-core 19.7.0, Chromium 111.0.5563.146", "ReleaseDate": "2023-07-21T05:30:00+05:30", "DeprecationDate": "2024-03-08T13:30:00+05:30" }, { "VersionName": "syn-nodejs-puppeteer-4.0", "Description": "Upgraded to NodeJS 16.x. Dependencies: Node JS 16.x, Puppeteer-core 5.5.0, Chromium 92.0.4512.0", "ReleaseDate": "2023-05-01T05:30:00+05:30", "DeprecationDate": "2024-03-08T13:30:00+05:30" } ] }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez DescribeRuntimeVersions
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser disassociate-resource.
- AWS CLI
-
Pour supprimer un canary d’un groupe
L’exemple
disassociate-resourcesuivant supprime un canary du groupe nommédemo_group.aws synthetics disassociate-resource \ --group-identifierdemo_group\ --resource-arnarn:aws:synthetics:us-east-1:123456789012:canary:demo_canaryCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez DisassociateResource
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser get-canary-runs.
- AWS CLI
-
Pour récupérer la liste des exécutions d’un canary spécifié
L’exemple
get-canary-runssuivant récupère la liste des exécutions du canary nommédemo_canary.aws synthetics get-canary-runs \ --namedemo_canarySortie :
{ "CanaryRuns": [ { "Id": "a1b2c3d4-5678-90ab-cdef-example11111", "Name": "demo_canary", "Status": { "State": "PASSED", "StateReason": "", "StateReasonCode": "" }, "Timeline": { "Started": "2024-10-16T10:38:57.013000+05:30", "Completed": "2024-10-16T10:39:25.793000+05:30" }, "ArtifactS3Location": "cw-syn-results-123456789012-us-east-1/canary/us-east-1/demo_canary-abc-example1234/2024/10/15/13/50-39-690" } ] }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez GetCanaryRuns
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser get-canary.
- AWS CLI
-
Pour récupérer les informations complètes sur un canary
L’exemple
get-canarysuivant récupère les informations complètes sur le canary nommédemo_canary.aws synthetics get-canary \ --namedemo_canarySortie :
{ "Canary": { "Id": "a1b2c3d4-5678-90ab-cdef-example11111", "Name": "demo_canary", "Code": { "SourceLocationArn": "arn:aws:lambda:us-east-1:123456789012:layer:cwsyn-demo_canary-a1b2c3d4-5678-90ab-cdef-example111118:1", "Handler": "pageLoadBlueprint.handler" }, "ExecutionRoleArn": "arn:aws:iam::123456789012:role/demo_canary_role", "Schedule": { "Expression": "rate(10 minutes)", "DurationInSeconds": 0 }, "RunConfig": { "TimeoutInSeconds": 300, "MemoryInMB": 1000, "ActiveTracing": false }, "SuccessRetentionPeriodInDays": 31, "FailureRetentionPeriodInDays": 31, "Status": { "State": "RUNNING" }, "Timeline": { "Created": "2024-10-15T18:55:15.168000+05:30", "LastModified": "2024-10-15T18:55:40.540000+05:30", "LastStarted": "2024-10-15T18:55:40.540000+05:30" }, "ArtifactS3Location": "cw-syn-results-123456789012-us-east-1/canary/us-east-1/demo_canary-a12-a123bc456789", "EngineArn": "arn:aws:lambda:us-east-1:123456789012:function:cwsyn-demo_canary-a1b2c3d4-5678-90ab-cdef-example111118:1", "RuntimeVersion": "syn-nodejs-puppeteer-9.1", "Tags": { "blueprint": "heartbeat" } } }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez GetCanary
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser get-group.
- AWS CLI
-
Pour renvoyer les informations sur un groupe
L’exemple
get-groupsuivant renvoie les informations sur le groupe nommédemo_group.aws synthetics get-group \ --group-identifierdemo_groupSortie :
{ "Group": { "Id": "example123", "Name": "demo_group", "Arn": "arn:aws:synthetics:us-east-1:123456789012:group:example123", "Tags": {}, "CreatedTime": "2024-10-15T14:47:23.811000+05:30", "LastModifiedTime": "2024-10-15T14:47:23.811000+05:30" } }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez GetGroup
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser list-associated-groups.
- AWS CLI
-
Pour renvoyer la liste des groupes
L’exemple
list-associated-groupssuivant renvoie la liste des groupes associés au canary nommédemo_canary.aws synthetics list-associated-groups \ --resource-arnarn:aws:synthetics:us-east-1:123456789012:canary:demo_canarySortie :
{ "Groups": [ { "Id": "example123", "Name": "demo_group", "Arn": "arn:aws:synthetics:us-east-1:123456789012:group:example123" } ] }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez ListAssociatedGroups
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser list-group-resources.
- AWS CLI
-
Pour renvoyer la liste des ARN des scripts Canary associés au groupe spécifié
L’exemple
list-group-resourcessuivant renvoie la liste des ARN des scripts Canary associés au groupe nommédemo_group.aws synthetics list-group-resources \ --group-identifierdemo_groupSortie :
{ "Resources": [ "arn:aws:synthetics:us-east-1:123456789012:canary:demo_canary" ] }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez ListGroupResources
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser list-groups.
- AWS CLI
-
Pour renvoyer la liste de tous les groupes du compte
L’exemple
list-groupssuivant renvoie la liste de tous les groupes du compte.aws synthetics list-groupsSortie :
{ "Groups": [ { "Id": "example123", "Name": "demo_group", "Arn": "arn:aws:synthetics:us-east-1:123456789012:group:example123" } ] }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez ListGroups
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser list-tags-for-resource.
- AWS CLI
-
Exemple 1 : pour afficher les balises associées à un canary
L’exemple
list-tags-for-resourcesuivant renvoie les balises associées à un canary nommédemo_canary.aws synthetics list-tags-for-resource \ --resource-arnarn:aws:synthetics:us-east-1:123456789012:canary:demo_canarySortie :
{ "Tags": { "blueprint": "heartbeat" } }Exemple 2 : pour afficher les balises associés à un groupe
L’exemple
list-tags-for-resourcesuivant renvoie les balises associées à un groupe nommédemo_group.aws synthetics list-tags-for-resource \ --resource-arnarn:aws:synthetics:us-east-1:123456789012:group:example123Sortie :
{ "Tags": { "team": "Devops" } }Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez ListTagsForResource
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser start-canary.
- AWS CLI
-
Pour exécuter un canary
L’exemple
start-canarysuivant exécute un canary nommédemo_canary.aws synthetics start-canary \ --namedemo_canaryCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez StartCanary
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser stop-canary.
- AWS CLI
-
Pour arrêter un canary
L’exemple
stop-canarysuivant arrête le canary nommédemo_canary.aws synthetics stop-canary \ --namedemo_canaryCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez StopCanary
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser tag-resource.
- AWS CLI
-
Exemple 1 : pour attribuer une balise au canary
L’exemple
tag-resourcesuivant attribue une balise au canary nommédemo_canary.aws synthetics tag-resource \ --resource-arnarn:aws:synthetics:us-east-1:123456789012:canary:demo_canary\ --tagsblueprint=heartbeatCette commande ne produit aucune sortie.
Exemple 2 : pour attribuer une balise au groupe
L’exemple
tag-resourcesuivant attribue une balise au groupe nommédemo_group.aws synthetics tag-resource \ --resource-arnarn:aws:synthetics:us-east-1:123456789012:group:example123\ --tagsteam=DevopsCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez TagResource
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser untag-resource.
- AWS CLI
-
Exemple 1 : pour supprimer une balise du canary
L’exemple
untag-resourcesuivant supprime une balise du canary nommédemo_canary.aws synthetics untag-resource \ --resource-arnarn:aws:synthetics:us-east-1:123456789012:canary:demo_canary\ --tag-keysblueprintCette commande ne produit aucune sortie.
Exemple 2 : pour supprimer une balise du groupe
L’exemple
untag-resourcesuivant supprime une balise du groupe nommédemo_group.aws synthetics untag-resource \ --resource-arnarn:aws:synthetics:us-east-1:123456789012:group:example123\ --tag-keysteamCette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez UntagResource
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser update-canary.
- AWS CLI
-
Pour mettre à jour un canary
L’exemple
update-canarysuivant met à jour la configuration d’un canary nommédemo_canary.aws synthetics update-canary \ --namedemo_canary\ --schedule Expression="rate(15 minutes)"Cette commande ne produit aucune sortie.
Pour plus d’informations, consultez Surveillance Synthetics (scripts Canary) dans le Guide de l’utilisateur Amazon CloudWatch.
-
Pour plus de détails sur l’API, consultez UpdateCanary
dans la Référence des commandes de l’AWS CLI.
-