aws-lambdaserverless-frameworkamazon-kinesis-firehose

Using the Serverless Framework, how can I create a Lambda that uses Kinesis Firehose as the event source


I'm trying to create a Lambda that uses a Firehose delivery stream as the event trigger, I am creating this using the Serverless Framework.

serverless.yml setup:

functions:
  transformer:
    handler: index.handler
    events:
      - stream:
          type: kinesis
          arn: <firehose_arn>

I've been using the Serverless framework docs as a reference, as far as I can tell I'm copying them, but when I try to deploy my Lambda using sls deploy, this error message is returned:

Invalid request provided: Unrecognized event source, must be kinesis, dynamodb stream or sqs.

Can Kinesis Data Firehose be used as an event source, and if so, how do you configure this using the Serverless Framework?


Solution

  • Kinesis Firehose cannot be used as an event source. Kinesis Data Streams can be used. The link you mentioned makes use of Kinesis data streams, which is different from Kinesis firehose (or delivery stream).

    Here are the destinations supported by Kinesis firehose: https://docs.aws.amazon.com/firehose/latest/dev/create-destination.html