Трассировка стека журналов занимает очень много времени - PullRequest
0 голосов
/ 17 июня 2019

У меня есть служебный метод, который обрабатывает ошибки для всех моих обработчиков Lambda.

static HandlerEndWithError(err: Error): IApiGatewayResponse {
   Logger.debug(`handler ended with error. err => ${JSON.stringify(err)}`);
   Logger.debug(`error stack ${err.stack}`);
...
}

Вывод в Cloudwatch выглядит следующим образом:

07:01:35
{"message":"handler ended with error. err => {\"generatedMessage\":false,\"name\":\"AssertionError [ERR_ASSERTION]\",\"code\":\"ERR_ASSERTION\",\"expected\":true,\"operator\":\"==\"}","level":"debug"}

07:01:41
{"message":"error stack AssertionError [ERR_ASSERTION]: the Address field is required in the request body\n at assert ... (abbreviated)

Обратите внимание на время, которое требуется дляLogger для регистрации стека составляет 6 секунд в этом случае.

Если я изменю свой метод на запись только err.message, то он будет работать как положено (несколько мс на запись).

Есть идеи, как лучше регистрировать ошибку с помощью своего стека?

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