Обработка ошибок в Lambda с интеграцией прокси API Gateway - PullRequest
1 голос
/ 14 мая 2019

Насколько я понимаю, при использовании интеграции Lambda-прокси необходимо вернуть statusCode и body, чтобы вернуть любую значимую информацию об ошибке клиенту HTTP.

Мой код Python ниже:

import json
import traceback

def lambda_handler(event, context):

    try:
        result = business_logic()        
        return {
            'statusCode': 200,
            'body': json.dumps(result)    
        }

    except Exception as e:
        error = {
            "type": e.__class__.__name__,
            "message": str(e),
            "traceback": traceback.format_exc()
        }
        return {
            'statusCode': 502,
            'body': json.dumps(error)
        }

Моя проблема в том, что я хотел бы использовать удобный интерфейс мониторинга Lambda и Cloudwatch (например, возможность запуска лямбда-ошибок), но поскольку лямбда в этом коде обрабатывает все ошибки и возвращает значение, я думаю, что lambda 0% ошибок.

Есть ли альтернативный подход, который все еще использует интеграцию прокси и передает информацию об ошибке?

1 Ответ

0 голосов
/ 14 июня 2019

Я думаю, что если вы хотите проверить свои метрики, лучше проверить облачные часы API Gateway, чем Lambda.

Если вы действительно не хотите, чтобы облачные часы Lambda отслеживали ошибки, вы могли бы использовать интеграцию без прокси

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...