Доступ к лямбда-логам с асинхронного вызова? - PullRequest
0 голосов
/ 15 октября 2018

Я бы хотел запустить мою функцию delete_me и получить ее вывод.Я попробовал следующую команду:

aws lambda invoke \
--invocation-type Event \
--function-name delete_me \
--region us-west-2 \
--log-type Tail \
--payload '{"key1":"value1", "key2":"value2", "key3":"value3"}' outputfile.txt 

и получил следующий вывод:

{
    "StatusCode": 202
}

Я что-то не так делаю?Как я могу получить доступ к журналам?

1 Ответ

0 голосов
/ 15 октября 2018

Из документации invoke() :

response = client.invoke(
    FunctionName='string',
    InvocationType='Event'|'RequestResponse'|'DryRun',
    LogType='None'|'Tail',
    ClientContext='string',
    Payload=b'bytes'|file,
    Qualifier='string'
)

Возвраты:

{
    'StatusCode': 123,
    'FunctionError': 'string',
    'LogResult': 'string',
    'Payload': StreamingBody(),
    'ExecutedVersion': 'string'
}

Полезная нагрузка (StreamingBody) -

Это JSON-представление объекта, возвращаемого функцией Lambda.Это присутствует, только если тип вызова RequestResponse

Итак, добавьте invocationType='RequestResponse' к вашему вызову.

...