Module kinesis
This page documents the language specification for the aws package. If you're looking for help working with the inputs, outputs, or functions of aws resources in a Pulumi program, please see the resource documentation for examples and API reference.
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-awsrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-awsrepo.
Resources
Functions
Others
- AnalyticsApplicationArgs
- AnalyticsApplicationState
- FirehoseDeliveryStreamArgs
- FirehoseDeliveryStreamState
- GetStreamArgs
- GetStreamResult
- StreamArgs
- StreamEvent
- StreamEventHandler
- StreamEventRecord
- StreamEventSubscription
- StreamEventSubscriptionArgs
- StreamState
- VideoStreamArgs
- VideoStreamState
Resources
Resource AnalyticsApplication
class AnalyticsApplication extends CustomResourceProvides a Kinesis Analytics Application resource. Kinesis Analytics is a managed service that allows processing and analyzing streaming data using standard SQL.
For more details, see the Amazon Kinesis Analytics Documentation.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const testStream = new aws.kinesis.Stream("test_stream", {
shardCount: 1,
});
const testApplication = new aws.kinesis.AnalyticsApplication("test_application", {
inputs: {
kinesisStream: {
resourceArn: testStream.arn,
roleArn: aws_iam_role_test.arn,
},
namePrefix: "test_prefix",
parallelism: {
count: 1,
},
schema: {
recordColumns: [{
mapping: "$.test",
name: "test",
sqlType: "VARCHAR(8)",
}],
recordEncoding: "UTF-8",
recordFormat: {
mappingParameters: {
json: {
recordRowPath: "$",
},
},
},
},
},
});constructor
new AnalyticsApplication(name: string, args?: AnalyticsApplicationArgs, opts?: pulumi.CustomResourceOptions)Create a AnalyticsApplication resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AnalyticsApplicationState, opts?: pulumi.CustomResourceOptions): AnalyticsApplicationGet an existing AnalyticsApplication resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is AnalyticsApplicationReturns true if the given object is an instance of AnalyticsApplication. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property arn
public arn: pulumi.Output<ARN>;The ARN of the Kinesis Analytics Appliation.
property cloudwatchLoggingOptions
public cloudwatchLoggingOptions: pulumi.Output<AnalyticsApplicationCloudwatchLoggingOptions | undefined>;The CloudWatch log stream options to monitor application errors. See CloudWatch Logging Options below for more details.
property code
public code: pulumi.Output<string | undefined>;SQL Code to transform input data, and generate output.
property createTimestamp
public createTimestamp: pulumi.Output<string>;The Timestamp when the application version was created.
property description
public description: pulumi.Output<string | undefined>;Description of the application.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property inputs
public inputs: pulumi.Output<AnalyticsApplicationInputs | undefined>;Input configuration of the application. See Inputs below for more details.
property lastUpdateTimestamp
public lastUpdateTimestamp: pulumi.Output<string>;The Timestamp when the application was last updated.
property name
public name: pulumi.Output<string>;Name of the Kinesis Analytics Application.
property outputs
public outputs: pulumi.Output<AnalyticsApplicationOutput[] | undefined>;Output destination configuration of the application. See Outputs below for more details.
property referenceDataSources
public referenceDataSources: pulumi.Output<AnalyticsApplicationReferenceDataSources | undefined>;An S3 Reference Data Source for the application. See Reference Data Sources below for more details.
property status
public status: pulumi.Output<string>;The Status of the application.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;Key-value map of tags for the Kinesis Analytics Application.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property version
public version: pulumi.Output<number>;The Version of the application.
Resource FirehoseDeliveryStream
class FirehoseDeliveryStream extends CustomResourceProvides a Kinesis Firehose Delivery Stream resource. Amazon Kinesis Firehose is a fully managed, elastic service to easily deliver real-time data streams to destinations such as Amazon S3 and Amazon Redshift.
For more details, see the Amazon Kinesis Firehose Documentation.
Example Usage
Extended S3 Destination
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const bucket = new aws.s3.Bucket("bucket", {
acl: "private",
});
const firehoseRole = new aws.iam.Role("firehose_role", {
assumeRolePolicy: `{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Principal": {
"Service": "firehose.amazonaws.com"
},
"Effect": "Allow",
"Sid": ""
}
]
}
`,
});
const lambdaIam = new aws.iam.Role("lambda_iam", {
assumeRolePolicy: `{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Effect": "Allow",
"Sid": ""
}
]
}
`,
});
const lambdaProcessor = new aws.lambda.Function("lambda_processor", {
code: new pulumi.asset.FileArchive("lambda.zip"),
handler: "exports.handler",
role: lambdaIam.arn,
runtime: "nodejs8.10",
});
const extendedS3Stream = new aws.kinesis.FirehoseDeliveryStream("extended_s3_stream", {
destination: "extended_s3",
extendedS3Configuration: {
bucketArn: bucket.arn,
processingConfiguration: {
enabled: true,
processors: [{
parameters: [{
parameterName: "LambdaArn",
parameterValue: pulumi.interpolate`${lambdaProcessor.arn}:$LATEST`,
}],
type: "Lambda",
}],
},
roleArn: firehoseRole.arn,
},
});S3 Destination
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const bucket = new aws.s3.Bucket("bucket", {
acl: "private",
});
const firehoseRole = new aws.iam.Role("firehose_role", {
assumeRolePolicy: `{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Principal": {
"Service": "firehose.amazonaws.com"
},
"Effect": "Allow",
"Sid": ""
}
]
}
`,
});
const testStream = new aws.kinesis.FirehoseDeliveryStream("test_stream", {
destination: "s3",
s3Configuration: {
bucketArn: bucket.arn,
roleArn: firehoseRole.arn,
},
});Redshift Destination
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const testCluster = new aws.redshift.Cluster("test_cluster", {
clusterIdentifier: "tf-redshift-cluster-%d",
clusterType: "single-node",
databaseName: "test",
masterPassword: "T3stPass",
masterUsername: "testuser",
nodeType: "dc1.large",
});
const testStream = new aws.kinesis.FirehoseDeliveryStream("test_stream", {
destination: "redshift",
redshiftConfiguration: {
clusterJdbcurl: pulumi.interpolate`jdbc:redshift://${testCluster.endpoint}/${testCluster.databaseName}`,
copyOptions: "delimiter '|'", // the default delimiter
dataTableColumns: "test-col",
dataTableName: "test-table",
password: "T3stPass",
roleArn: aws_iam_role_firehose_role.arn,
s3BackupConfiguration: {
bucketArn: aws_s3_bucket_bucket.arn,
bufferInterval: 300,
bufferSize: 15,
compressionFormat: "GZIP",
roleArn: aws_iam_role_firehose_role.arn,
},
s3BackupMode: "Enabled",
username: "testuser",
},
s3Configuration: {
bucketArn: aws_s3_bucket_bucket.arn,
bufferInterval: 400,
bufferSize: 10,
compressionFormat: "GZIP",
roleArn: aws_iam_role_firehose_role.arn,
},
});Elasticsearch Destination
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const testCluster = new aws.elasticsearch.Domain("test_cluster", {});
const testStream = new aws.kinesis.FirehoseDeliveryStream("test_stream", {
destination: "elasticsearch",
elasticsearchConfiguration: {
domainArn: testCluster.arn,
indexName: "test",
processingConfiguration: {
enabled: true,
processors: [{
parameters: [{
parameterName: "LambdaArn",
parameterValue: pulumi.interpolate`${aws_lambda_function_lambda_processor.arn}:$LATEST`,
}],
type: "Lambda",
}],
},
roleArn: aws_iam_role_firehose_role.arn,
typeName: "test",
},
s3Configuration: {
bucketArn: aws_s3_bucket_bucket.arn,
bufferInterval: 400,
bufferSize: 10,
compressionFormat: "GZIP",
roleArn: aws_iam_role_firehose_role.arn,
},
});Splunk Destination
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const testStream = new aws.kinesis.FirehoseDeliveryStream("test_stream", {
destination: "splunk",
s3Configuration: {
bucketArn: aws_s3_bucket_bucket.arn,
bufferInterval: 400,
bufferSize: 10,
compressionFormat: "GZIP",
roleArn: aws_iam_role_firehose.arn,
},
splunkConfiguration: {
hecAcknowledgmentTimeout: 600,
hecEndpoint: "https://http-inputs-mydomain.splunkcloud.com:443",
hecEndpointType: "Event",
hecToken: "51D4DA16-C61B-4F5F-8EC7-ED4301342A4A",
s3BackupMode: "FailedEventsOnly",
},
});constructor
new FirehoseDeliveryStream(name: string, args: FirehoseDeliveryStreamArgs, opts?: pulumi.CustomResourceOptions)Create a FirehoseDeliveryStream resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FirehoseDeliveryStreamState, opts?: pulumi.CustomResourceOptions): FirehoseDeliveryStreamGet an existing FirehoseDeliveryStream resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is FirehoseDeliveryStreamReturns true if the given object is an instance of FirehoseDeliveryStream. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property arn
public arn: pulumi.Output<string>;The Amazon Resource Name (ARN) specifying the Stream
property destination
public destination: pulumi.Output<string>;This is the destination to where the data is delivered. The only options are s3 (Deprecated, use extendedS3 instead), extendedS3, redshift, elasticsearch, and splunk.
property destinationId
public destinationId: pulumi.Output<string>;property elasticsearchConfiguration
public elasticsearchConfiguration: pulumi.Output<FirehoseDeliveryStreamElasticsearchConfiguration | undefined>;Configuration options if elasticsearch is the destination. More details are given below.
property extendedS3Configuration
public extendedS3Configuration: pulumi.Output<FirehoseDeliveryStreamExtendedS3Configuration | undefined>;Enhanced configuration options for the s3 destination. More details are given below.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property kinesisSourceConfiguration
public kinesisSourceConfiguration: pulumi.Output<FirehoseDeliveryStreamKinesisSourceConfiguration | undefined>;Allows the ability to specify the kinesis stream that is used as the source of the firehose delivery stream.
property name
public name: pulumi.Output<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property redshiftConfiguration
public redshiftConfiguration: pulumi.Output<FirehoseDeliveryStreamRedshiftConfiguration | undefined>;Configuration options if redshift is the destination.
Using redshiftConfiguration requires the user to also specify a
s3Configuration block. More details are given below.
property s3Configuration
public s3Configuration: pulumi.Output<FirehoseDeliveryStreamS3Configuration | undefined>;Required for non-S3 destinations. For S3 destination, use extendedS3Configuration instead. Configuration options for the s3 destination (or the intermediate bucket if the destination
is redshift). More details are given below.
property serverSideEncryption
public serverSideEncryption: pulumi.Output<FirehoseDeliveryStreamServerSideEncryption | undefined>;Encrypt at rest options. Server-side encryption should not be enabled when a kinesis stream is configured as the source of the firehose delivery stream.
property splunkConfiguration
public splunkConfiguration: pulumi.Output<FirehoseDeliveryStreamSplunkConfiguration | undefined>;property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property versionId
public versionId: pulumi.Output<string>;Specifies the table version for the output data schema. Defaults to LATEST.
Resource Stream
class Stream extends CustomResourceProvides a Kinesis Stream resource. Amazon Kinesis is a managed service that scales elastically for real-time processing of streaming big data.
For more details, see the Amazon Kinesis Documentation.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const testStream = new aws.kinesis.Stream("test_stream", {
retentionPeriod: 48,
shardCount: 1,
shardLevelMetrics: [
"IncomingBytes",
"OutgoingBytes",
],
tags: {
Environment: "test",
},
});constructor
new Stream(name: string, args: StreamArgs, opts?: pulumi.CustomResourceOptions)Create a Stream resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StreamState, opts?: pulumi.CustomResourceOptions): StreamGet an existing Stream resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is StreamReturns true if the given object is an instance of Stream. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
method onEvent
onEvent(name: string, handler: StreamEventHandler, args: StreamEventSubscriptionArgs, opts?: pulumi.ComponentResourceOptions): StreamEventSubscriptionCreates a new subscription to events fired from this Stream to the handler provided, along with options to control the behavior of the subscription.
property arn
public arn: pulumi.Output<string>;The Amazon Resource Name (ARN) specifying the Stream (same as id)
property encryptionType
public encryptionType: pulumi.Output<string | undefined>;The encryption type to use. The only acceptable values are NONE or KMS. The default value is NONE.
property enforceConsumerDeletion
public enforceConsumerDeletion: pulumi.Output<boolean | undefined>;A boolean that indicates all registered consumers should be deregistered from the stream so that the stream can be destroyed without error. The default value is false.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property kmsKeyId
public kmsKeyId: pulumi.Output<string | undefined>;The GUID for the customer-managed KMS key to use for encryption. You can also use a Kinesis-owned master key by specifying the alias alias/aws/kinesis.
property name
public name: pulumi.Output<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property retentionPeriod
public retentionPeriod: pulumi.Output<number | undefined>;Length of time data records are accessible after they are added to the stream. The maximum value of a stream’s retention period is 168 hours. Minimum value is 24. Default is 24.
property shardCount
public shardCount: pulumi.Output<number>;The number of shards that the stream will use. Amazon has guidelines for specifying the Stream size that should be referenced when creating a Kinesis stream. See Amazon Kinesis Streams for more.
property shardLevelMetrics
public shardLevelMetrics: pulumi.Output<string[] | undefined>;A list of shard-level CloudWatch metrics which can be enabled for the stream. See Monitoring with CloudWatch for more. Note that the value ALL should not be used; instead you should provide an explicit list of metrics you wish to enable.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource VideoStream
class VideoStream extends CustomResourceProvides a Kinesis Video Stream resource. Amazon Kinesis Video Streams makes it easy to securely stream video from connected devices to AWS for analytics, machine learning (ML), playback, and other processing.
For more details, see the Amazon Kinesis Documentation.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const defaultVideoStream = new aws.kinesis.VideoStream("default", {
dataRetentionInHours: 1,
deviceName: "kinesis-video-device-name",
mediaType: "video/h264",
tags: {
Name: "kinesis-video-stream",
},
});constructor
new VideoStream(name: string, args?: VideoStreamArgs, opts?: pulumi.CustomResourceOptions)Create a VideoStream resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VideoStreamState, opts?: pulumi.CustomResourceOptions): VideoStreamGet an existing VideoStream resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is VideoStreamReturns true if the given object is an instance of VideoStream. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property arn
public arn: pulumi.Output<string>;The Amazon Resource Name (ARN) specifying the Stream (same as id)
property creationTime
public creationTime: pulumi.Output<string>;A time stamp that indicates when the stream was created.
property dataRetentionInHours
public dataRetentionInHours: pulumi.Output<number | undefined>;The number of hours that you want to retain the data in the stream. Kinesis Video Streams retains the data in a data store that is associated with the stream. The default value is 0, indicating that the stream does not persist data.
property deviceName
public deviceName: pulumi.Output<string | undefined>;The name of the device that is writing to the stream. In the current implementation, Kinesis Video Streams does not use this name.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property kmsKeyId
public kmsKeyId: pulumi.Output<string>;The ID of the AWS Key Management Service (AWS KMS) key that you want Kinesis Video Streams to use to encrypt stream data. If no key ID is specified, the default, Kinesis Video-managed key (aws/kinesisvideo) is used.
property mediaType
public mediaType: pulumi.Output<string | undefined>;The media type of the stream. Consumers of the stream can use this information when processing the stream. For more information about media types, see Media Types. If you choose to specify the MediaType, see Naming Requirements for guidelines.
property name
public name: pulumi.Output<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property version
public version: pulumi.Output<string>;The version of the stream.
Functions
Function getStream
getStream(args: GetStreamArgs, opts?: pulumi.InvokeOptions): Promise<GetStreamResult>Use this data source to get information about a Kinesis Stream for use in other resources.
For more details, see the Amazon Kinesis Documentation.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const stream = pulumi.output(aws.kinesis.getStream({
name: "stream-name",
}, { async: true }));Others
interface AnalyticsApplicationArgs
interface AnalyticsApplicationArgsThe set of arguments for constructing a AnalyticsApplication resource.
property cloudwatchLoggingOptions
cloudwatchLoggingOptions?: pulumi.Input<AnalyticsApplicationCloudwatchLoggingOptions>;The CloudWatch log stream options to monitor application errors. See CloudWatch Logging Options below for more details.
property code
code?: pulumi.Input<string>;SQL Code to transform input data, and generate output.
property description
description?: pulumi.Input<string>;Description of the application.
property inputs
inputs?: pulumi.Input<AnalyticsApplicationInputs>;Input configuration of the application. See Inputs below for more details.
property name
name?: pulumi.Input<string>;Name of the Kinesis Analytics Application.
property outputs
outputs?: pulumi.Input<pulumi.Input<AnalyticsApplicationOutput>[]>;Output destination configuration of the application. See Outputs below for more details.
property referenceDataSources
referenceDataSources?: pulumi.Input<AnalyticsApplicationReferenceDataSources>;An S3 Reference Data Source for the application. See Reference Data Sources below for more details.
property tags
tags?: pulumi.Input<{[key: string]: any}>;Key-value map of tags for the Kinesis Analytics Application.
interface AnalyticsApplicationState
interface AnalyticsApplicationStateInput properties used for looking up and filtering AnalyticsApplication resources.
property arn
arn?: pulumi.Input<ARN>;The ARN of the Kinesis Analytics Appliation.
property cloudwatchLoggingOptions
cloudwatchLoggingOptions?: pulumi.Input<AnalyticsApplicationCloudwatchLoggingOptions>;The CloudWatch log stream options to monitor application errors. See CloudWatch Logging Options below for more details.
property code
code?: pulumi.Input<string>;SQL Code to transform input data, and generate output.
property createTimestamp
createTimestamp?: pulumi.Input<string>;The Timestamp when the application version was created.
property description
description?: pulumi.Input<string>;Description of the application.
property inputs
inputs?: pulumi.Input<AnalyticsApplicationInputs>;Input configuration of the application. See Inputs below for more details.
property lastUpdateTimestamp
lastUpdateTimestamp?: pulumi.Input<string>;The Timestamp when the application was last updated.
property name
name?: pulumi.Input<string>;Name of the Kinesis Analytics Application.
property outputs
outputs?: pulumi.Input<pulumi.Input<AnalyticsApplicationOutput>[]>;Output destination configuration of the application. See Outputs below for more details.
property referenceDataSources
referenceDataSources?: pulumi.Input<AnalyticsApplicationReferenceDataSources>;An S3 Reference Data Source for the application. See Reference Data Sources below for more details.
property status
status?: pulumi.Input<string>;The Status of the application.
property tags
tags?: pulumi.Input<{[key: string]: any}>;Key-value map of tags for the Kinesis Analytics Application.
property version
version?: pulumi.Input<number>;The Version of the application.
interface FirehoseDeliveryStreamArgs
interface FirehoseDeliveryStreamArgsThe set of arguments for constructing a FirehoseDeliveryStream resource.
property arn
arn?: pulumi.Input<string>;The Amazon Resource Name (ARN) specifying the Stream
property destination
destination: pulumi.Input<string>;This is the destination to where the data is delivered. The only options are s3 (Deprecated, use extendedS3 instead), extendedS3, redshift, elasticsearch, and splunk.
property destinationId
destinationId?: pulumi.Input<string>;property elasticsearchConfiguration
elasticsearchConfiguration?: pulumi.Input<FirehoseDeliveryStreamElasticsearchConfiguration>;Configuration options if elasticsearch is the destination. More details are given below.
property extendedS3Configuration
extendedS3Configuration?: pulumi.Input<FirehoseDeliveryStreamExtendedS3Configuration>;Enhanced configuration options for the s3 destination. More details are given below.
property kinesisSourceConfiguration
kinesisSourceConfiguration?: pulumi.Input<FirehoseDeliveryStreamKinesisSourceConfiguration>;Allows the ability to specify the kinesis stream that is used as the source of the firehose delivery stream.
property name
name?: pulumi.Input<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property redshiftConfiguration
redshiftConfiguration?: pulumi.Input<FirehoseDeliveryStreamRedshiftConfiguration>;Configuration options if redshift is the destination.
Using redshiftConfiguration requires the user to also specify a
s3Configuration block. More details are given below.
property s3Configuration
s3Configuration?: pulumi.Input<FirehoseDeliveryStreamS3Configuration>;Required for non-S3 destinations. For S3 destination, use extendedS3Configuration instead. Configuration options for the s3 destination (or the intermediate bucket if the destination
is redshift). More details are given below.
property serverSideEncryption
serverSideEncryption?: pulumi.Input<FirehoseDeliveryStreamServerSideEncryption>;Encrypt at rest options. Server-side encryption should not be enabled when a kinesis stream is configured as the source of the firehose delivery stream.
property splunkConfiguration
splunkConfiguration?: pulumi.Input<FirehoseDeliveryStreamSplunkConfiguration>;property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
property versionId
versionId?: pulumi.Input<string>;Specifies the table version for the output data schema. Defaults to LATEST.
interface FirehoseDeliveryStreamState
interface FirehoseDeliveryStreamStateInput properties used for looking up and filtering FirehoseDeliveryStream resources.
property arn
arn?: pulumi.Input<string>;The Amazon Resource Name (ARN) specifying the Stream
property destination
destination?: pulumi.Input<string>;This is the destination to where the data is delivered. The only options are s3 (Deprecated, use extendedS3 instead), extendedS3, redshift, elasticsearch, and splunk.
property destinationId
destinationId?: pulumi.Input<string>;property elasticsearchConfiguration
elasticsearchConfiguration?: pulumi.Input<FirehoseDeliveryStreamElasticsearchConfiguration>;Configuration options if elasticsearch is the destination. More details are given below.
property extendedS3Configuration
extendedS3Configuration?: pulumi.Input<FirehoseDeliveryStreamExtendedS3Configuration>;Enhanced configuration options for the s3 destination. More details are given below.
property kinesisSourceConfiguration
kinesisSourceConfiguration?: pulumi.Input<FirehoseDeliveryStreamKinesisSourceConfiguration>;Allows the ability to specify the kinesis stream that is used as the source of the firehose delivery stream.
property name
name?: pulumi.Input<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property redshiftConfiguration
redshiftConfiguration?: pulumi.Input<FirehoseDeliveryStreamRedshiftConfiguration>;Configuration options if redshift is the destination.
Using redshiftConfiguration requires the user to also specify a
s3Configuration block. More details are given below.
property s3Configuration
s3Configuration?: pulumi.Input<FirehoseDeliveryStreamS3Configuration>;Required for non-S3 destinations. For S3 destination, use extendedS3Configuration instead. Configuration options for the s3 destination (or the intermediate bucket if the destination
is redshift). More details are given below.
property serverSideEncryption
serverSideEncryption?: pulumi.Input<FirehoseDeliveryStreamServerSideEncryption>;Encrypt at rest options. Server-side encryption should not be enabled when a kinesis stream is configured as the source of the firehose delivery stream.
property splunkConfiguration
splunkConfiguration?: pulumi.Input<FirehoseDeliveryStreamSplunkConfiguration>;property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
property versionId
versionId?: pulumi.Input<string>;Specifies the table version for the output data schema. Defaults to LATEST.
interface GetStreamArgs
interface GetStreamArgsA collection of arguments for invoking getStream.
property name
name: string;The name of the Kinesis Stream.
property tags
tags?: undefined | {[key: string]: any};A map of tags to assigned to the stream.
interface GetStreamResult
interface GetStreamResultA collection of values returned by getStream.
property arn
arn: string;The Amazon Resource Name (ARN) of the Kinesis Stream (same as id).
property closedShards
closedShards: string[];The list of shard ids in the CLOSED state. See Shard State for more.
property creationTimestamp
creationTimestamp: number;The approximate UNIX timestamp that the stream was created.
property id
id: string;The provider-assigned unique ID for this managed resource.
property name
name: string;The name of the Kinesis Stream.
property openShards
openShards: string[];The list of shard ids in the OPEN state. See Shard State for more.
property retentionPeriod
retentionPeriod: number;Length of time (in hours) data records are accessible after they are added to the stream.
property shardLevelMetrics
shardLevelMetrics: string[];A list of shard-level CloudWatch metrics which are enabled for the stream. See Monitoring with CloudWatch for more.
property status
status: string;The current status of the stream. The stream status is one of CREATING, DELETING, ACTIVE, or UPDATING.
property tags
tags: {[key: string]: any};A map of tags to assigned to the stream.
interface StreamArgs
interface StreamArgsThe set of arguments for constructing a Stream resource.
property arn
arn?: pulumi.Input<string>;The Amazon Resource Name (ARN) specifying the Stream (same as id)
property encryptionType
encryptionType?: pulumi.Input<string>;The encryption type to use. The only acceptable values are NONE or KMS. The default value is NONE.
property enforceConsumerDeletion
enforceConsumerDeletion?: pulumi.Input<boolean>;A boolean that indicates all registered consumers should be deregistered from the stream so that the stream can be destroyed without error. The default value is false.
property kmsKeyId
kmsKeyId?: pulumi.Input<string>;The GUID for the customer-managed KMS key to use for encryption. You can also use a Kinesis-owned master key by specifying the alias alias/aws/kinesis.
property name
name?: pulumi.Input<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property retentionPeriod
retentionPeriod?: pulumi.Input<number>;Length of time data records are accessible after they are added to the stream. The maximum value of a stream’s retention period is 168 hours. Minimum value is 24. Default is 24.
property shardCount
shardCount: pulumi.Input<number>;The number of shards that the stream will use. Amazon has guidelines for specifying the Stream size that should be referenced when creating a Kinesis stream. See Amazon Kinesis Streams for more.
property shardLevelMetrics
shardLevelMetrics?: pulumi.Input<pulumi.Input<string>[]>;A list of shard-level CloudWatch metrics which can be enabled for the stream. See Monitoring with CloudWatch for more. Note that the value ALL should not be used; instead you should provide an explicit list of metrics you wish to enable.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
interface StreamEvent
interface StreamEventproperty Records
Records: StreamEventRecord[];type StreamEventHandler
type StreamEventHandler = lambda.EventHandler<StreamEvent, void>;interface StreamEventRecord
interface StreamEventRecordproperty awsRegion
awsRegion: string;property eventID
eventID: string;property eventName
eventName: "aws:kinesis:record";property eventSource
eventSource: "aws:kinesis";property eventSourceARN
eventSourceARN: string;property eventVersion
eventVersion: string;property invokeIdentityArn
invokeIdentityArn: string;property kinesis
kinesis: {
data: string;
kinesisSchemaVersion: string;
partitionKey: string;
sequenceNumber: string;
};class StreamEventSubscription
class StreamEventSubscription extends EventSubscriptionconstructor
new StreamEventSubscription(name: string, stream: Stream, handler: StreamEventHandler, args: StreamEventSubscriptionArgs, opts: ComponentResourceOptions)method getData
protected getData(): Promise<TData>Retrieves the data produces by [initialize]. The data is immediately available in a
derived class’s constructor after the super(...) call to ComponentResource.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod initialize
protected initialize(args: Inputs): Promise<TData>Can be overridden by a subclass to asynchronously initialize data for this Component
automatically when constructed. The data will be available immediately for subclass
constructors to use. To access the data use .getData.
method isInstance
static isInstance(obj: any): obj is ComponentResourceReturns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
method registerOutputs
protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): voidregisterOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.
ComponentResources can call this at the end of their constructor to indicate that they are
done creating child resources. This is not strictly necessary as this will automatically be
called after the initialize method completes.
property eventSourceMapping
public eventSourceMapping: EventSourceMapping;property func
public func: LambdaFunction;property permission
public permission: Permission;property stream
public stream: Stream;property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
interface StreamEventSubscriptionArgs
interface StreamEventSubscriptionArgsproperty batchSize
batchSize?: undefined | number;The largest number of records that Lambda will retrieve from your event source at the time of
invocation. Defaults to 100 for Kinesis.
property bisectBatchOnFunctionError
bisectBatchOnFunctionError?: undefined | false | true;If the function returns an error, split the batch in two and retry. Defaults to false.
property destinationConfig
destinationConfig?: pulumi.Input<EventSourceMappingDestinationConfig>;An Amazon SQS queue or Amazon SNS topic destination for failed records.
property maximumBatchingWindowInSeconds
maximumBatchingWindowInSeconds?: undefined | number;The maximum amount of time to gather records before invoking the function, in seconds. Records will continue to buffer until either maximum_batching_window_in_seconds expires or batch_size has been met. Defaults to as soon as records are available in the stream. If the batch it reads from the stream only has one record in it, Lambda only sends one record to the function.
property maximumRecordAgeInSeconds
maximumRecordAgeInSeconds?: undefined | number;The maximum age of a record that Lambda sends to a function for processing. Minimum of 60, maximum and default of 604800
property maximumRetryAttempts
maximumRetryAttempts?: undefined | number;The maximum number of times to retry when the function returns an error. Minimum of 0, maximum and default of 10000.
property parallelizationFactor
parallelizationFactor?: undefined | number;The number of batches to process from each shard concurrently. Minimum and default of 1, maximum of 10
property startingPosition
startingPosition: "TRIM_HORIZON" | "LATEST" | "AT_TIMESTAMP";The position in the stream where AWS Lambda should start reading. Must be one of either
TRIM_HORIZON, LATEST or AT_TIMESTAMP. If AT_TIMESTAMP is provided,
[startingPositionTimestamp] must be provided as well.
property startingPositionTimestamp
startingPositionTimestamp?: undefined | string;A timestamp in RFC3339 format of the
data record which to start reading when using starting_position set to AT_TIMESTAMP.
If a record with this exact timestamp does not exist, the next later record is chosen.
If the timestamp is older than the current trim horizon, the oldest available record is
chosen.
interface StreamState
interface StreamStateInput properties used for looking up and filtering Stream resources.
property arn
arn?: pulumi.Input<string>;The Amazon Resource Name (ARN) specifying the Stream (same as id)
property encryptionType
encryptionType?: pulumi.Input<string>;The encryption type to use. The only acceptable values are NONE or KMS. The default value is NONE.
property enforceConsumerDeletion
enforceConsumerDeletion?: pulumi.Input<boolean>;A boolean that indicates all registered consumers should be deregistered from the stream so that the stream can be destroyed without error. The default value is false.
property kmsKeyId
kmsKeyId?: pulumi.Input<string>;The GUID for the customer-managed KMS key to use for encryption. You can also use a Kinesis-owned master key by specifying the alias alias/aws/kinesis.
property name
name?: pulumi.Input<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property retentionPeriod
retentionPeriod?: pulumi.Input<number>;Length of time data records are accessible after they are added to the stream. The maximum value of a stream’s retention period is 168 hours. Minimum value is 24. Default is 24.
property shardCount
shardCount?: pulumi.Input<number>;The number of shards that the stream will use. Amazon has guidelines for specifying the Stream size that should be referenced when creating a Kinesis stream. See Amazon Kinesis Streams for more.
property shardLevelMetrics
shardLevelMetrics?: pulumi.Input<pulumi.Input<string>[]>;A list of shard-level CloudWatch metrics which can be enabled for the stream. See Monitoring with CloudWatch for more. Note that the value ALL should not be used; instead you should provide an explicit list of metrics you wish to enable.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
interface VideoStreamArgs
interface VideoStreamArgsThe set of arguments for constructing a VideoStream resource.
property dataRetentionInHours
dataRetentionInHours?: pulumi.Input<number>;The number of hours that you want to retain the data in the stream. Kinesis Video Streams retains the data in a data store that is associated with the stream. The default value is 0, indicating that the stream does not persist data.
property deviceName
deviceName?: pulumi.Input<string>;The name of the device that is writing to the stream. In the current implementation, Kinesis Video Streams does not use this name.
property kmsKeyId
kmsKeyId?: pulumi.Input<string>;The ID of the AWS Key Management Service (AWS KMS) key that you want Kinesis Video Streams to use to encrypt stream data. If no key ID is specified, the default, Kinesis Video-managed key (aws/kinesisvideo) is used.
property mediaType
mediaType?: pulumi.Input<string>;The media type of the stream. Consumers of the stream can use this information when processing the stream. For more information about media types, see Media Types. If you choose to specify the MediaType, see Naming Requirements for guidelines.
property name
name?: pulumi.Input<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
interface VideoStreamState
interface VideoStreamStateInput properties used for looking up and filtering VideoStream resources.
property arn
arn?: pulumi.Input<string>;The Amazon Resource Name (ARN) specifying the Stream (same as id)
property creationTime
creationTime?: pulumi.Input<string>;A time stamp that indicates when the stream was created.
property dataRetentionInHours
dataRetentionInHours?: pulumi.Input<number>;The number of hours that you want to retain the data in the stream. Kinesis Video Streams retains the data in a data store that is associated with the stream. The default value is 0, indicating that the stream does not persist data.
property deviceName
deviceName?: pulumi.Input<string>;The name of the device that is writing to the stream. In the current implementation, Kinesis Video Streams does not use this name.
property kmsKeyId
kmsKeyId?: pulumi.Input<string>;The ID of the AWS Key Management Service (AWS KMS) key that you want Kinesis Video Streams to use to encrypt stream data. If no key ID is specified, the default, Kinesis Video-managed key (aws/kinesisvideo) is used.
property mediaType
mediaType?: pulumi.Input<string>;The media type of the stream. Consumers of the stream can use this information when processing the stream. For more information about media types, see Media Types. If you choose to specify the MediaType, see Naming Requirements for guidelines.
property name
name?: pulumi.Input<string>;A name to identify the stream. This is unique to the AWS account and region the Stream is created in.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
property version
version?: pulumi.Input<string>;The version of the stream.