All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
ApplicationProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.103.1 (build bef2dea)", date="2024-10-25T14:21:25.929Z") @Stability(Experimental) public interface ApplicationProps extends software.amazon.jsii.JsiiSerializable
(experimental) Props for creating an Application construct.

Example:

 Bucket bucket;
 Application flinkApp = Application.Builder.create(this, "Application")
         .propertyGroups(Map.of(
                 "FlinkApplicationProperties", Map.of(
                         "inputStreamName", "my-input-kinesis-stream",
                         "outputStreamName", "my-output-kinesis-stream")))
         // ...
         .runtime(Runtime.FLINK_1_20)
         .code(ApplicationCode.fromBucket(bucket, "my-app.jar"))
         .build();
 
  • Method Details

    • getCode

      @Stability(Experimental) @NotNull ApplicationCode getCode()
      (experimental) The Flink code asset to run.
    • getRuntime

      @Stability(Experimental) @NotNull Runtime getRuntime()
      (experimental) The Flink version to use for this application.
    • getApplicationName

      @Stability(Experimental) @Nullable default String getApplicationName()
      (experimental) A name for your Application that is unique to an AWS account.

      Default: - CloudFormation-generated name

    • getAutoScalingEnabled

      @Stability(Experimental) @Nullable default Boolean getAutoScalingEnabled()
      (experimental) Whether the Kinesis Data Analytics service can increase the parallelism of the application in response to resource usage.

      Default: true

    • getCheckpointingEnabled

      @Stability(Experimental) @Nullable default Boolean getCheckpointingEnabled()
      (experimental) Whether checkpointing is enabled while your application runs.

      Default: true

    • getCheckpointInterval

      @Stability(Experimental) @Nullable default Duration getCheckpointInterval()
      (experimental) The interval between checkpoints.

      Default: - 1 minute

    • getLogGroup

      @Stability(Experimental) @Nullable default ILogGroup getLogGroup()
      (experimental) The log group to send log entries to.

      Default: - CDK's default LogGroup

    • getLogLevel

      @Stability(Experimental) @Nullable default LogLevel getLogLevel()
      (experimental) The level of log verbosity from the Flink application.

      Default: FlinkLogLevel.INFO

    • getMetricsLevel

      @Stability(Experimental) @Nullable default MetricsLevel getMetricsLevel()
      (experimental) Describes the granularity of the CloudWatch metrics for an application.

      Use caution with Parallelism level metrics. Parallelism granularity logs metrics for each parallel thread and can quickly become expensive when parallelism is high (e.g. > 64).

      Default: MetricsLevel.APPLICATION

    • getMinPauseBetweenCheckpoints

      @Stability(Experimental) @Nullable default Duration getMinPauseBetweenCheckpoints()
      (experimental) The minimum amount of time in to wait after a checkpoint finishes to start a new checkpoint.

      Default: - 5 seconds

    • getParallelism

      @Stability(Experimental) @Nullable default Number getParallelism()
      (experimental) The initial parallelism for the application.

      Kinesis Data Analytics can stop the app, increase the parallelism, and start the app again if autoScalingEnabled is true (the default value).

      Default: 1

    • getParallelismPerKpu

      @Stability(Experimental) @Nullable default Number getParallelismPerKpu()
      (experimental) The Flink parallelism allowed per Kinesis Processing Unit (KPU).

      Default: 1

    • getPropertyGroups

      @Stability(Experimental) @Nullable default Map<String,Map<String,String>> getPropertyGroups()
      (experimental) Configuration PropertyGroups.

      You can use these property groups to pass arbitrary runtime configuration values to your Flink app.

      Default: - No property group configuration provided to the Flink app

    • getRemovalPolicy

      @Stability(Experimental) @Nullable default RemovalPolicy getRemovalPolicy()
      (experimental) Provide a RemovalPolicy to override the default.

      Default: RemovalPolicy.DESTROY

    • getRole

      @Stability(Experimental) @Nullable default IRole getRole()
      (experimental) A role to use to grant permissions to your application.

      Prefer omitting this property and using the default role.

      Default: - a new Role will be created

    • getSecurityGroups

      @Stability(Experimental) @Nullable default List<ISecurityGroup> getSecurityGroups()
      (experimental) Security groups to use with a provided VPC.

      Default: - a new security group is created for this application.

    • getSnapshotsEnabled

      @Stability(Experimental) @Nullable default Boolean getSnapshotsEnabled()
      (experimental) Determines if Flink snapshots are enabled.

      Default: true

    • getVpc

      @Stability(Experimental) @Nullable default IVpc getVpc()
      (experimental) Deploy the Flink application in a VPC.

      Default: - no VPC

    • getVpcSubnets

      @Stability(Experimental) @Nullable default SubnetSelection getVpcSubnets()
      (experimental) Choose which VPC subnets to use.

      Default: - SubnetType.PRIVATE_WITH_EGRESS subnets

    • builder

      @Stability(Experimental) static ApplicationProps.Builder builder()
      Returns:
      a ApplicationProps.Builder of ApplicationProps