投稿日: Nov 16, 2023

AWS Lambda が、Amazon Managed Streaming for Apache Kafka (MSK) の失敗イベント送信先とセルフマネージド Apache Kafka イベントソースマッピングをサポートするようになりました。失敗したイベントの送信先を指定することで、エラーが返される場合でも、Lambda 関数はトピックのイベントの処理を続行できます。

これまで、AWS Lambda 関数が Kafka メッセージの処理に失敗した場合、Lambda 関数はメッセージの有効期限が切れるまでレコードを再試行していました。この方法では、不要なコストが発生し、エラー処理が複雑になる可能性があります。失敗イベントの送信先がサポートされることで、失敗したイベントのバッチは数回の再試行の後、SQS、SNS、または S3 に送信されます。これにより、1 回のバッチの失敗で Lambda 関数が停止することがなくなり、後でイベントを再実行できるようになります。6 MB を超える Kafka メッセージも、失敗したイベントの送信先に送信されます。送信先として SQS または SNS を選択すると、Lambda はオフセット情報を含むメタデータを送信先に送信します。送信先として S3 を選択すると、Lambda は失敗したバッチの呼び出しレコードを送信先に送信します。

この機能は、Amazon MSK またはセルフマネージドの Apache Kafka イベントソースマッピングが利用可能なすべての AWS リージョンでご利用いただけます。この機能はデフォルトでは無効になっており、使用するための追加料金は不要ですが、目的の送信先 (SQS、SNS、S3) に関連する料金が課金されます。詳細については Amazon MSK または Kafka の Lambda デベロッパーガイドを参照してください。