This handles deployment for a Cloudwatch Synthetic Canary. The stack consists of an S3 bucket for the zip file of the canary code, Lambda function to execute canary code, Lambda layer for nodejs dependency management (puppeteer), Cloudwatch alarm for failed executions, Cloudwatch logs for runtime logging, Xray for distributed system tracing, and appropriate Iam roles.
Canaries offer programmatic access to a headless Google Chrome Browser. Canaries are scripts that monitor your endpoints and APIs from the outside-in. Canaries help you check the availability and latency of your web services and troubleshoot anomalies by investigating load time data, screenshots of the UI, logs, and metrics. You can set up a canary to run continuously or just once.
export AWS_PROFILE=<profile_name>
yarn run deploy
yarn run remove