通过 Cloudformation 模板将 Lambda 函数添加到 Kinesis Firehose
Adding a Lambda function into Kinesis Firehose via Cloudformation Template
我想向我的 Kinesis Firehose 添加一个 Lambda 函数,以按照 here 所述转换源数据。
查看 Cloudformation Template for Kinesis firehose,我没有看到相应的选项,
Type: "AWS::KinesisFirehose::DeliveryStream"
Properties:
DeliveryStreamName: String
DeliveryStreamType: String
ElasticsearchDestinationConfiguration:
ElasticsearchDestinationConfiguration
ExtendedS3DestinationConfiguration:
ExtendedS3DestinationConfiguration
KinesisStreamSourceConfiguration:
KinesisStreamSourceConfiguration
RedshiftDestinationConfiguration:
RedshiftDestinationConfiguration
S3DestinationConfiguration:
S3DestinationConfiguration
如何设置 CF 模板以使 Lambda 函数处理 Kinesis Firehose 的输入?
可以通过 ProcessingConfiguration 实现此目的,它可用于 ES、S3 和 Redshift 目标配置。应如下所示:
"ElasticsearchDestinationConfiguration": {
...
"ProcessingConfiguration": {
"Enabled": "true",
"Processors": [
{
"Parameters": [
{
"ParameterName": "LambdaArn",
"ParameterValue": "arn:aws:lambda:eu-west-1:123456789:function:cw-transformer:$LATEST"
}
],
"Type": "Lambda"
}
]
}
...
}
我想向我的 Kinesis Firehose 添加一个 Lambda 函数,以按照 here 所述转换源数据。
查看 Cloudformation Template for Kinesis firehose,我没有看到相应的选项,
Type: "AWS::KinesisFirehose::DeliveryStream"
Properties:
DeliveryStreamName: String
DeliveryStreamType: String
ElasticsearchDestinationConfiguration:
ElasticsearchDestinationConfiguration
ExtendedS3DestinationConfiguration:
ExtendedS3DestinationConfiguration
KinesisStreamSourceConfiguration:
KinesisStreamSourceConfiguration
RedshiftDestinationConfiguration:
RedshiftDestinationConfiguration
S3DestinationConfiguration:
S3DestinationConfiguration
如何设置 CF 模板以使 Lambda 函数处理 Kinesis Firehose 的输入?
可以通过 ProcessingConfiguration 实现此目的,它可用于 ES、S3 和 Redshift 目标配置。应如下所示:
"ElasticsearchDestinationConfiguration": {
...
"ProcessingConfiguration": {
"Enabled": "true",
"Processors": [
{
"Parameters": [
{
"ParameterName": "LambdaArn",
"ParameterValue": "arn:aws:lambda:eu-west-1:123456789:function:cw-transformer:$LATEST"
}
],
"Type": "Lambda"
}
]
}
...
}