-
Notifications
You must be signed in to change notification settings - Fork 128
[ESM] Add table for feature-specific coverage #1594
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -165,20 +165,51 @@ The product of 10 and 10 is 100% | |
| [Lambda event source mappings](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventsourcemapping.html) allows you to connect Lambda functions to other AWS services. | ||
| The following event sources are supported in LocalStack: | ||
|
|
||
| - [Simple Queue Service (SQS)](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html) | ||
| - [DynamoDB](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html) | ||
| - [Kinesis](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html) | ||
| - [Managed Streaming for Apache Kafka (MSK)](https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html) | ||
| - [Simple Queue Service (SQS)](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html) | ||
|
|
||
| The limitations compared to AWS include: | ||
| - Lambda Success Destinations are not supported. | ||
| - Only basic validations are performed upon creating and updating ESM. | ||
| - Streaming Pollers for Kinesis and DynamoDB do not implement the following batching behavior configurations: | ||
| - `BisectBatchOnFunctionError` | ||
| - `MaximumBatchingWindowInSeconds` | ||
| - `ParallelizationFactor` | ||
| - `ScalingConfig` | ||
| - `TumblingWindowInSeconds`. | ||
| - [Self-Managed Apache Kafka](https://docs.aws.amazon.com/lambda/latest/dg/with-kafka.html) | ||
|
|
||
| ### Coverage | ||
|
||
|
|
||
| The coverage table below shows feature-level coverage for all supported event sources for the latest version of LocalStack. | ||
|
||
|
|
||
| Where necessary, footnotes are used to provide additional context. | ||
|
|
||
| #### Legend | ||
| - ⭐️ Only Available in Pro | ||
| - 🟢 Fully Implemented | ||
| - 🟡 Partially Implemented | ||
| - 🟠 Not Implemented | ||
| - ➖ Not Applicable (Not Supported by AWS) | ||
|
|
||
| | | <th colspan="2" style="text-align:center;">SQS</th> <th colspan="2" style="text-align:center;">Stream</th> <th colspan="2" style="text-align:center;">Kafka ⭐️</th> | ||
| |--------------------------------|-------------------------------------------------|:--------:|:----:|:---------:|:----------:|:----------:|:------------:| | ||
| | **Parameter** | **Description** | **Standard** | **FIFO** | **Kinesis** | **DynamoDB** | **Amazon MSK** | **Self-Managed** | | ||
| | BatchSize | Batching events by count. | 🟡 [^1] | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | | ||
| | ➖ | Batch when ≥ 6 MB limit. | 🟠 | 🟠 | 🟠 | 🟠 | 🟢 | 🟢 | | ||
|
||
| | MaximumBatchingWindowInSeconds | Batch by Time Window. | 🟠 | ➖ | 🟠 | 🟠 | 🟢 | 🟢 | | ||
| | MaximumRetryAttempts | Discard after N retries. | ➖ | ➖ | 🟢 | 🟢 | ➖ | ➖ | | ||
| | MaximumRecordAgeInSeconds | Discard records older than time `t`. | ➖ | ➖ | 🟢 | 🟢 | ➖ | ➖ | | ||
| | Enabled | Enabling/Disabling. | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | | ||
| | FilterCriteria | Filter criteria object. | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | | ||
|
||
| | FunctionResponseTypes | Enabling ReportBatchItemFailures. | 🟢 | 🟢 | 🟢 | 🟢 | ➖ | ➖ | | ||
| | BisectBatchOnFunctionError | Bisect a batch on error and retry. | ➖ | ➖ | 🟠 | 🟠 | ➖ | ➖ | | ||
| | ScalingConfig | The scaling configuration for the event source. | 🟠 | 🟠 | ➖ | ➖ | ➖ | ➖ | | ||
| | ParallelizationFactor | Parallel batch processing by shard. | ➖ | ➖ | 🟠 | 🟠 | ➖ | ➖ | | ||
| | DestinationConfig.OnFailure | SQS Failure Destination. | ➖ | ➖ | 🟢 | 🟢 | 🟢 | 🟢 | | ||
| | | SNS Failure Destination. | ➖ | ➖ | 🟢 | 🟢 | 🟢 | 🟢 | | ||
| | | S3 Failure Destination. | ➖ | ➖ | 🟠 | 🟠 | 🟠 | 🟠 | | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Great solution 👏
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🫡 |
||
| | DestinationConfig.OnSuccess | Success Destinations. | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ | | ||
| | MetricsConfig | CloudWatch metrics. | 🟠 | 🟠 | 🟠 | 🟠 | 🟠 | 🟠 | | ||
| | ProvisionedPollerConfig | Control throughput via min-max limits. | ➖ | ➖ | ➖ | ➖ | 🟠 | 🟠 | | ||
| | StartingPosition | Position to start reading from. | ➖ | ➖ | 🟢 | 🟢 | 🟢 | 🟢 | | ||
| | StartingPositionTimestamp | Timestamp to start reading from. | ➖ | ➖ | 🟢 | ➖ | 🟢 | 🟢 | | ||
| | TumblingWindowInSeconds | Duration (seconds) of a processing window. | ➖ | ➖ | 🟠 | 🟠 | ➖ | ➖ | | ||
| | Topics ⭐️ | Kafka topics to read from. | ➖ | ➖ | ➖ | ➖ | 🟢 | 🟢 | | ||
|
|
||
| [^1]: SQS event-source mappings are limited to sending batches of up to `10` records at a time when invoking Lambda functions. | ||
|
|
||
| Create a [GitHub issue](https://github.com/localstack/localstack/issues/new/choose) or reach out to [LocalStack support](https://docs.localstack.cloud/getting-started/help-and-support/) if you experience any challenges. | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you think we should add Self-Managed Kafka and the Pro image star ⭐ or is the table sufficient? It might be easier to see a quick list at first glance at the cost of some redundancy 🤷♂️
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done