Class: Aws::Synthetics::Types::CanaryCodeInput

Inherits:
Struct
  • Object
show all
Includes:
Aws::Structure
Defined in:
lib/aws-sdk-synthetics/types.rb

Overview

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.

  • For Node.js canaries, the folder structure must be ‘nodejs/node_modules/myCanaryFilename.js ` For more information, see

    Packaging your Node.js canary files][1
  • For Python canaries, the folder structure must be ‘python/myCanaryFilename.p ` or `python/myFolder/myCanaryFilename.py ` For more information, see [Packaging your Python canary files]

[1]: docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_WritingCanary_Nodejs.html#CloudWatch_Synthetics_Canaries_package [2]: docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_WritingCanary_Python.html#CloudWatch_Synthetics_Canaries_WritingCanary_Python_package

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#handlerString

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 `.

Returns:

  • (String)


327
328
329
330
331
332
333
334
335
# File 'lib/aws-sdk-synthetics/types.rb', line 327

class CanaryCodeInput < Struct.new(
  :s3_bucket,
  :s3_key,
  :s3_version,
  :zip_file,
  :handler)
  SENSITIVE = []
  include Aws::Structure
end

#s3_bucketString

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

Returns:

  • (String)


327
328
329
330
331
332
333
334
335
# File 'lib/aws-sdk-synthetics/types.rb', line 327

class CanaryCodeInput < Struct.new(
  :s3_bucket,
  :s3_key,
  :s3_version,
  :zip_file,
  :handler)
  SENSITIVE = []
  include Aws::Structure
end

#s3_keyString

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

[1]: docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html

Returns:

  • (String)


327
328
329
330
331
332
333
334
335
# File 'lib/aws-sdk-synthetics/types.rb', line 327

class CanaryCodeInput < Struct.new(
  :s3_bucket,
  :s3_key,
  :s3_version,
  :zip_file,
  :handler)
  SENSITIVE = []
  include Aws::Structure
end

#s3_versionString

The S3 version ID of your script.

Returns:

  • (String)


327
328
329
330
331
332
333
334
335
# File 'lib/aws-sdk-synthetics/types.rb', line 327

class CanaryCodeInput < Struct.new(
  :s3_bucket,
  :s3_key,
  :s3_version,
  :zip_file,
  :handler)
  SENSITIVE = []
  include Aws::Structure
end

#zip_fileString

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.

Returns:

  • (String)


327
328
329
330
331
332
333
334
335
# File 'lib/aws-sdk-synthetics/types.rb', line 327

class CanaryCodeInput < Struct.new(
  :s3_bucket,
  :s3_key,
  :s3_version,
  :zip_file,
  :handler)
  SENSITIVE = []
  include Aws::Structure
end