@aws-cdk_aws-kinesisanalytics-flink-alpha.ApplicationProps

interface ApplicationProps ๐Ÿ”น

LanguageType name
.NETAmazon.CDK.AWS.Kinesisanalytics.Flink.Alpha.ApplicationProps
Gogithub.com/aws/aws-cdk-go/awscdkkinesisanalyticsflinkalpha/v2#ApplicationProps
Javasoftware.amazon.awscdk.services.kinesisanalytics.flink.alpha.ApplicationProps
Pythonaws_cdk.aws_kinesisanalytics_flink_alpha.ApplicationProps
TypeScript (source)@aws-cdk/aws-kinesisanalytics-flink-alpha ยป ApplicationProps

Props for creating an Application construct.

Example

import * as path from 'path';
import * as cloudwatch from 'aws-cdk-lib/aws-cloudwatch';
import * as core from 'aws-cdk-lib';
import * as flink from '../lib';

const app = new core.App();
const stack = new core.Stack(app, 'FlinkAppTest');

const flinkApp = new flink.Application(stack, 'App', {
  code: flink.ApplicationCode.fromAsset(path.join(__dirname, 'code-asset')),
  runtime: flink.Runtime.FLINK_1_11,
});

new cloudwatch.Alarm(stack, 'Alarm', {
  metric: flinkApp.metricFullRestarts(),
  evaluationPeriods: 1,
  threshold: 3,
});
///! hide

app.synth();

Properties

NameTypeDescription
code๐Ÿ”นApplicationCodeThe Flink code asset to run.
runtime๐Ÿ”นRuntimeThe Flink version to use for this application.
applicationName?๐Ÿ”นstringA name for your Application that is unique to an AWS account.
autoScalingEnabled?๐Ÿ”นbooleanWhether the Kinesis Data Analytics service can increase the parallelism of the application in response to resource usage.
checkpointInterval?๐Ÿ”นDurationThe interval between checkpoints.
checkpointingEnabled?๐Ÿ”นbooleanWhether checkpointing is enabled while your application runs.
logGroup?๐Ÿ”นILogGroupThe log group to send log entries to.
logLevel?๐Ÿ”นLogLevelThe level of log verbosity from the Flink application.
metricsLevel?๐Ÿ”นMetricsLevelDescribes the granularity of the CloudWatch metrics for an application.
minPauseBetweenCheckpoints?๐Ÿ”นDurationThe minimum amount of time in to wait after a checkpoint finishes to start a new checkpoint.
parallelism?๐Ÿ”นnumberThe initial parallelism for the application.
parallelismPerKpu?๐Ÿ”นnumberThe Flink parallelism allowed per Kinesis Processing Unit (KPU).
propertyGroups?๐Ÿ”น{ [string]: { [string]: string } }Configuration PropertyGroups.
removalPolicy?๐Ÿ”นRemovalPolicyProvide a RemovalPolicy to override the default.
role?๐Ÿ”นIRoleA role to use to grant permissions to your application.
securityGroups?๐Ÿ”นISecurityGroup[]Security groups to use with a provided VPC.
snapshotsEnabled?๐Ÿ”นbooleanDetermines if Flink snapshots are enabled.
vpc?๐Ÿ”นIVpcDeploy the Flink application in a VPC.
vpcSubnets?๐Ÿ”นSubnetSelectionChoose which VPC subnets to use.

code๐Ÿ”น

Type: ApplicationCode

The Flink code asset to run.


runtime๐Ÿ”น

Type: Runtime

The Flink version to use for this application.


applicationName?๐Ÿ”น

Type: string (optional, default: CloudFormation-generated name)

A name for your Application that is unique to an AWS account.


autoScalingEnabled?๐Ÿ”น

Type: boolean (optional, default: true)

Whether the Kinesis Data Analytics service can increase the parallelism of the application in response to resource usage.


checkpointInterval?๐Ÿ”น

Type: Duration (optional, default: 1 minute)

The interval between checkpoints.


checkpointingEnabled?๐Ÿ”น

Type: boolean (optional, default: true)

Whether checkpointing is enabled while your application runs.


logGroup?๐Ÿ”น

Type: ILogGroup (optional, default: CDK's default LogGroup)

The log group to send log entries to.


logLevel?๐Ÿ”น

Type: LogLevel (optional, default: FlinkLogLevel.INFO)

The level of log verbosity from the Flink application.


metricsLevel?๐Ÿ”น

Type: MetricsLevel (optional, default: MetricsLevel.APPLICATION)

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


minPauseBetweenCheckpoints?๐Ÿ”น

Type: Duration (optional, default: 5 seconds)

The minimum amount of time in to wait after a checkpoint finishes to start a new checkpoint.


parallelism?๐Ÿ”น

Type: number (optional, default: 1)

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


parallelismPerKpu?๐Ÿ”น

Type: number (optional, default: 1)

The Flink parallelism allowed per Kinesis Processing Unit (KPU).


propertyGroups?๐Ÿ”น

Type: { [string]: { [string]: string } } (optional, default: No property group configuration provided to the Flink app)

Configuration PropertyGroups.

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


removalPolicy?๐Ÿ”น

Type: RemovalPolicy (optional, default: RemovalPolicy.DESTROY)

Provide a RemovalPolicy to override the default.


role?๐Ÿ”น

Type: IRole (optional, default: a new Role will be created)

A role to use to grant permissions to your application.

Prefer omitting this property and using the default role.


securityGroups?๐Ÿ”น

Type: ISecurityGroup[] (optional, default: a new security group is created for this application.)

Security groups to use with a provided VPC.


snapshotsEnabled?๐Ÿ”น

Type: boolean (optional, default: true)

Determines if Flink snapshots are enabled.


vpc?๐Ÿ”น

Type: IVpc (optional, default: no VPC)

Deploy the Flink application in a VPC.


vpcSubnets?๐Ÿ”น

Type: SubnetSelection (optional, default: SubnetType.PRIVATE_WITH_EGRESS subnets)

Choose which VPC subnets to use.