java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.core.Construct
software.amazon.awscdk.core.Resource
software.amazon.awscdk.services.synthetics.Canary
All Implemented Interfaces:
IConstruct, IDependable, IResource, IConnectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:40.427Z") @Stability(Experimental) public class Canary extends Resource implements IConnectable
(experimental) Define a new Canary.

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_1)
         .environmentVariables(Map.of(
                 "stage", "prod"))
         .build();
 
  • Constructor Details

    • Canary

      protected Canary(software.amazon.jsii.JsiiObjectRef objRef)
    • Canary

      protected Canary(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • Canary

      @Stability(Experimental) public Canary(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CanaryProps props)
      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
      props - This parameter is required.
  • Method Details

    • metricDuration

      @Stability(Experimental) @NotNull public Metric metricDuration(@Nullable MetricOptions options)
      (experimental) Measure the Duration of a single canary run, in seconds.

      Default: avg over 5 minutes

      Parameters:
      options -
      • configuration options for the metric.
    • metricDuration

      @Stability(Experimental) @NotNull public Metric metricDuration()
      (experimental) Measure the Duration of a single canary run, in seconds.

      Default: avg over 5 minutes

    • metricFailed

      @Stability(Experimental) @NotNull public Metric metricFailed(@Nullable MetricOptions options)
      (experimental) Measure the number of failed canary runs over a given time period.

      Default: sum over 5 minutes

      Parameters:
      options -
      • configuration options for the metric.
    • metricFailed

      @Stability(Experimental) @NotNull public Metric metricFailed()
      (experimental) Measure the number of failed canary runs over a given time period.

      Default: sum over 5 minutes

    • metricSuccessPercent

      @Stability(Experimental) @NotNull public Metric metricSuccessPercent(@Nullable MetricOptions options)
      (experimental) Measure the percentage of successful canary runs.

      Default: avg over 5 minutes

      Parameters:
      options -
      • configuration options for the metric.
    • metricSuccessPercent

      @Stability(Experimental) @NotNull public Metric metricSuccessPercent()
      (experimental) Measure the percentage of successful canary runs.

      Default: avg over 5 minutes

    • getArtifactsBucket

      @Stability(Experimental) @NotNull public IBucket getArtifactsBucket()
      (experimental) Bucket where data from each canary run is stored.
    • getCanaryId

      @Stability(Experimental) @NotNull public String getCanaryId()
      (experimental) The canary ID.
    • getCanaryName

      @Stability(Experimental) @NotNull public String getCanaryName()
      (experimental) The canary Name.
    • getCanaryState

      @Stability(Experimental) @NotNull public String getCanaryState()
      (experimental) The state of the canary.

      For example, 'RUNNING', 'STOPPED', 'NOT STARTED', or 'ERROR'.

    • getConnections

      @Stability(Experimental) @NotNull public Connections getConnections()
      (experimental) Access the Connections object.

      Will fail if not a VPC-enabled Canary

      Specified by:
      getConnections in interface IConnectable
    • getRole

      @Stability(Experimental) @NotNull public IRole getRole()
      (experimental) Execution role associated with this Canary.