So we have 100 different types of messages coming into our Kinesis stream. We only want to save 4 types. I know Kinesis can transform messages, but can it filter as well? How is this done?
Filtering is just a transform in which you decide not to output anything. You indicate this by sending the result with a value "Dropped"
as per the documentation.
You can find at this post an example of transform, and the logic includes several things: letting records just pass through without any transform (status "OK"
), transforming and outputting a record (again, status "OK"
), dropping -or filtering- a record (status "Dropped"
), and communicating an error using the status "ProcessingFailed"