StreamConsumer
The StreamConsumer resource allows you to manage AWS Kinesis StreamConsumers that provide a way to read and process data from Kinesis streams.
Minimal Example
Section titled “Minimal Example”Create a basic Kinesis StreamConsumer with required properties.
import AWS from "alchemy/aws/control";
const basicStreamConsumer = await AWS.Kinesis.StreamConsumer("basicStreamConsumer", { ConsumerName: "MyStreamConsumer", StreamARN: "arn:aws:kinesis:us-east-1:123456789012:stream/MyKinesisStream", adopt: true // Adopt existing resource if it already exists});
Advanced Configuration
Section titled “Advanced Configuration”Configure a Kinesis StreamConsumer with additional properties like specifying a unique consumer name.
const advancedStreamConsumer = await AWS.Kinesis.StreamConsumer("advancedStreamConsumer", { ConsumerName: "UniqueStreamConsumerName", StreamARN: "arn:aws:kinesis:us-east-1:123456789012:stream/MyKinesisStream", adopt: false // Do not adopt if resource already exists});
Reading Data from the Stream
Section titled “Reading Data from the Stream”Implement a consumer application that reads data from the Kinesis stream using the created StreamConsumer.
import AWS from "alchemy/aws/control";
const consumerApplication = await AWS.Kinesis.StreamConsumer("dataReader", { ConsumerName: "DataReaderConsumer", StreamARN: "arn:aws:kinesis:us-east-1:123456789012:stream/MyKinesisStream"});
// Example code to process data would be added hereconsole.log(`Consumer ARN: ${consumerApplication.Arn}`);
Updating an Existing StreamConsumer
Section titled “Updating an Existing StreamConsumer”Update an existing StreamConsumer to change its name or other properties.
const updatedStreamConsumer = await AWS.Kinesis.StreamConsumer("updateStreamConsumer", { ConsumerName: "UpdatedStreamConsumerName", StreamARN: "arn:aws:kinesis:us-east-1:123456789012:stream/MyKinesisStream", adopt: true // This will allow the update to proceed if the consumer already exists});