CanaryCodeInput - Amazon CloudWatch Synthetics

CanaryCodeInput

Use this structure to input your script code for the canary. This structure contains the Lambda handler with the location where the canary should start running the script. If the script is stored in an S3 bucket, the bucket name, key, and version are also included. If the script was passed into the canary directly, the script code is contained in the value of Zipfile.

If you are uploading your canary scripts with an Amazon S3 bucket, your zip file should include your script in a certain folder structure.

Contents

Handler

The entry point to use for the source code when running the canary. For canaries that use the syn-python-selenium-1.0 runtime or a syn-nodejs.puppeteer runtime earlier than syn-nodejs.puppeteer-3.4, the handler must be specified as fileName.handler. For syn-python-selenium-1.1, syn-nodejs.puppeteer-3.4, and later runtimes, the handler can be specified as fileName.functionName , or you can specify a folder where canary scripts reside as folder/fileName.functionName .

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: ^([0-9a-zA-Z_-]+\/)*[0-9A-Za-z_\\-]+\.[A-Za-z_][A-Za-z0-9_]*$

Required: Yes

S3Bucket

If your canary script is located in S3, specify the bucket name here. Do not include s3:// as the start of the bucket name.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1024.

Required: No

S3Key

The S3 key of your script. For more information, see Working with Amazon S3 Objects.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1024.

Required: No

S3Version

The S3 version ID of your script.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1024.

Required: No

ZipFile

If you input your canary script directly into the canary instead of referring to an S3 location, the value of this parameter is the base64-encoded contents of the .zip file that contains the script. It must be smaller than 225 Kb.

For large canary scripts, we recommend that you use an S3 location instead of inputting it directly with this parameter.

Type: Base64-encoded binary data object

Length Constraints: Minimum length of 1. Maximum length of 10000000.

Required: No

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: