Получение сообщения об ошибке «Превышена скорость» в DLQ (SQS), настроенном для Lambda - PullRequest
0 голосов
/ 31 мая 2019

У нас есть следующие компоненты в AWS,
1. Ведро B1-S3 с уведомлением о событии S3 в L1 Lambda
2. L1 - Основная лямбда с параллелизмом - 5
3. DLQ - SQS для ошибок передачи на L1
4. L2 - сообщения DLQ Lambda to cnosumer от DLQ (SQS).

Когда мы помещаем файлы в B1 (S3 Bucket) , событие S3 запускает L1 (Main Lambda) и выполняет свою работу. Если есть ошибка и повторная попытка исчерпания, он перемещает Событие S3 в DLQ (SQS) , которое позже используется L2 (DLQ Lambda) и обрабатывается там.

Но в настоящее время, когда мы помещаем файлы 4K в B1 (S3 Bucket) , мы ничего не видим из L1 (Main Lambda) , тем не менее мы видим DLQ ( SQS) сообщения, используемые L2 (DLQ Lambda) с «Превышена скорость» и код состояния как 429 .

Нет никаких следов от L1 (Main Lambda) в журналах CloudWatch, пока мы получаем эти ошибки (здесь не виден ни один из requestID , созданный в событии S3). Поскольку мы настроили L1 (Main Lambda) с параллелизмом 5 , мы не ожидали, что «Превышена скорость».

Любая помощь в устранении неполадок, эта проблема высоко ценится.

Журналы Cloudwatch:

Событие SQS: (содержит событие S3 в качестве тела):

[2019-05-29 20:56:02.746]  fd65e055-731d-58fa-adcf-b53d8702bb69 DEBUG c.o.p.f.c.d.h.DLQCommonHandler -
{
    "Records": [
        {
            "eventVersion": "2.1",
            "eventSource": "aws:s3",
            "awsRegion": "us-east-1",
            "eventTime": "2019-05-29T14:56:00.333Z",
            "eventName": "ObjectCreated:Put",
            "userIdentity": {
                "principalId": "AWS:<principalId>"
            },
            "requestParameters": {
                "sourceIPAddress": "<sourceIPAddress>"
            },
            "responseElements": {
                "x-amz-request-id": "<amz-request-id>",
                "x-amz-id-2": "k5frqVgROM738Pxq1FF85GMuvQpNofU0d+bWVc45lcLWVb80h0rNpNAkBSyAff0w="
            },
            "s3": {
                "s3SchemaVersion": "1.0",
                "configurationId": "<configurationId>",
                "bucket": {
                    "name": "<bucket_name>",
                    "ownerIdentity": {
                        "principalId": "<principalId>"
                    },
                    "arn": "arn:aws:s3:::<bucket_name>"
                },
                "object": {
                    "key": "<file_path.csv>",
                    "size": 29595,
                    "eTag": "<eTag>",
                    "versionId": "3sCWDByjIL9DSKtO9zeKtL_l.7_OgH0X",
                    "sequencer": "005CEE9D803C09A82E"
                }
            }
        }
    ]
}

Сообщение об ошибке на DLQ Lambda:

[2019-05-29 20: 56: 02.746] fd65e055-731d-58fa-adcf-b53d8702bb69 ИНФОРМАЦИЯ c.o.p.f.c.d.h.DLQCommonHandler - messageAttributeMap: {RequestID = {stringValue: 287b5de3-f1f9-468b-92bc-c6333a0c41eb, stringListValues: [], binaryListValues: [], dataType: String}, ErrorCode = {stringValue: 429 , stringListValues: [], binaryListValues: [], dataType: Number}, ErrorMessage = {stringValue: Оценить Превышено. , stringListValues: [], binaryListValues: [], dataType: Строка}}

...