次のようなインフラストラクチャがあります: S3
-> SQS
-> Lambda
。ファイルが S3 にドロップされると、イベントが SQS キューに入れられ、ラムダ関数によって消費されます。
Lambda は .net コアで記述されています。ラムダ ハンドラー パラメーターでは、Json にシリアル化された and をSQSEvent
本体内で受け取ります。S3Event
クラス構造はおおまかに以下の通りです。これらは、AWS .net SDK から直接作成されたものです。
class SQSEvent
{
public List<SQSMessage> Records;
...
}
class SQSMessage
{
public string Body; // json serialized S3Event is put into here
...
}
class S3Event
{
public List<S3EventNotification> Records;
...
}
私が興味を持っているのは、 と の両方がレコードのリストを持っていることですSQSEvent
。S3Event
私の実験では、常にこれらのリストの 1 つのアイテムを受け取りました。Records
これらのリストのいずれかに複数の項目が含まれる状況はわかっていますか? この動作について述べた文書は見つかりませんでした。