@Generated(value="jsii-pacmak/1.74.0 (build 6d08790)", date="2023-02-09T02:01:26.352Z") @Stability(value=Experimental) public interface CanaryProps extends software.amazon.jsii.JsiiSerializable
Example:
Canary canary = Canary.Builder.create(this, "MyCanary")
.schedule(Schedule.rate(Duration.minutes(5)))
.test(Test.custom(CustomTestOptions.builder()
.code(Code.fromAsset(join(__dirname, "canary")))
.handler("index.handler")
.build()))
.runtime(Runtime.SYNTHETICS_NODEJS_PUPPETEER_3_8)
.environmentVariables(Map.of(
"stage", "prod"))
.build();
| Modifier and Type | Interface and Description |
|---|---|
static class |
CanaryProps.Builder
A builder for
CanaryProps |
static class |
CanaryProps.Jsii$Proxy
An implementation for
CanaryProps |
| Modifier and Type | Method and Description |
|---|---|
static CanaryProps.Builder |
builder() |
default ArtifactsBucketLocation |
getArtifactsBucketLocation()
(experimental) The s3 location that stores the data of the canary runs.
|
default String |
getCanaryName()
(experimental) The name of the canary.
|
default Boolean |
getEnableAutoDeleteLambdas()
(experimental) Whether or not to delete the lambda resources when the canary is deleted.
|
default Map<String,String> |
getEnvironmentVariables()
(experimental) Key-value pairs that the Synthetics caches and makes available for your canary scripts.
|
default Duration |
getFailureRetentionPeriod()
(experimental) How many days should failed runs be retained.
|
default IRole |
getRole()
(experimental) Canary execution role.
|
Runtime |
getRuntime()
(experimental) Specify the runtime version to use for the canary.
|
default Schedule |
getSchedule()
(experimental) Specify the schedule for how often the canary runs.
|
default List<ISecurityGroup> |
getSecurityGroups()
(experimental) The list of security groups to associate with the canary's network interfaces.
|
default Boolean |
getStartAfterCreation()
(experimental) Whether or not the canary should start after creation.
|
default Duration |
getSuccessRetentionPeriod()
(experimental) How many days should successful runs be retained.
|
Test |
getTest()
(experimental) The type of test that you want your canary to run.
|
default Duration |
getTimeToLive()
(experimental) How long the canary will be in a 'RUNNING' state.
|
default IVpc |
getVpc()
(experimental) The VPC where this canary is run.
|
default SubnetSelection |
getVpcSubnets()
(experimental) Where to place the network interfaces within the VPC.
|
@Stability(value=Experimental) @NotNull Runtime getRuntime()
@Stability(value=Experimental) @NotNull Test getTest()
Use Test.custom() to specify the test to run.
@Stability(value=Experimental) @Nullable default ArtifactsBucketLocation getArtifactsBucketLocation()
Default: - A new s3 bucket will be created without a prefix.
@Stability(value=Experimental) @Nullable default String getCanaryName()
Be sure to give it a descriptive name that distinguishes it from other canaries in your account.
Do not include secrets or proprietary information in your canary name. The canary name makes up part of the canary ARN, which is included in outbound calls over the internet.
Default: - A unique name will be generated from the construct ID
@Stability(value=Experimental) @Nullable default Boolean getEnableAutoDeleteLambdas()
Default: false
@Stability(value=Experimental) @Nullable default Map<String,String> getEnvironmentVariables()
Use environment variables to apply configuration changes, such as test and production environment configurations, without changing your Canary script source code.
Default: - No environment variables.
@Stability(value=Experimental) @Nullable default Duration getFailureRetentionPeriod()
Default: Duration.days(31)
@Stability(value=Experimental) @Nullable default IRole getRole()
This is the role that will be assumed by the canary upon execution. It controls the permissions that the canary will have. The role must be assumable by the AWS Lambda service principal.
If not supplied, a role will be created with all the required permissions. If you provide a Role, you must add the required permissions.
Default: - A unique role will be generated for this canary. You can add permissions to roles by calling 'addToRolePolicy'.
@Stability(value=Experimental) @Nullable default Schedule getSchedule()
For example, if you set schedule to rate(10 minutes), then the canary will run every 10 minutes.
You can set the schedule with Schedule.rate(Duration) (recommended) or you can specify an expression using Schedule.expression().
Default: 'rate(5 minutes)'
@Stability(value=Experimental) @Nullable default List<ISecurityGroup> getSecurityGroups()
You must provide vpc when using this prop.
Default: - If the canary is placed within a VPC and a security group is not specified a dedicated security group will be created for this canary.
@Stability(value=Experimental) @Nullable default Boolean getStartAfterCreation()
Default: true
@Stability(value=Experimental) @Nullable default Duration getSuccessRetentionPeriod()
Default: Duration.days(31)
@Stability(value=Experimental) @Nullable default Duration getTimeToLive()
For example, if you set timeToLive to be 1 hour and schedule to be rate(10 minutes),
your canary will run at 10 minute intervals for an hour, for a total of 6 times.
Default: - no limit
@Stability(value=Experimental) @Nullable default IVpc getVpc()
Specify this if the canary needs to access resources in a VPC.
Default: - Not in VPC
@Stability(value=Experimental) @Nullable default SubnetSelection getVpcSubnets()
You must provide vpc when using this prop.
Default: - the Vpc default strategy if not specified
@Stability(value=Experimental) static CanaryProps.Builder builder()
CanaryProps.Builder of CanaryPropsCopyright © 2023. All rights reserved.