Как добавить тег во все журналы Hapi в server.ext ('onRequest', ...) - PullRequest
0 голосов
/ 09 октября 2019

Очевидно, в этот вопрос встроено предположение, что это должно произойти в server.ext('onRequest', ...) - это не тот случай, поэтому это может произойти где-то еще.

Мой конкретный вариант использования заключается в том, что мой сервис вызываетсяЗагрузить тестер. Этот тестер нагрузки предоставляет специальный заголовок HTTP, который позволяет мне его идентифицировать. Я хочу добавить определенный тег ко всем журналам, когда этот заголовок присутствует.

Я хотел бы, однако, что было бы что-то в объекте запроса или свойство журнала в объекте запроса, что я смог быдобавить тег к этому будет применяться ко всем журналам по этому запросу. Ничего не могу найти.

Версия на хапи: @ hapi / hapi 18.3.2

1 Ответ

1 голос
/ 09 октября 2019

Собираем то, что я положил в hapihour здесь:

Вы можете перезаписать функцию внутреннего журнала hapi в расширении сервера по запросу, чтобы заставить его добавить свой пользовательский тег, используя следующий код:

    server.ext({
        type: 'onRequest',
        method: function (request, h) {

            const oldLogFxn = request._log;
            const newLogFxn = (tags, data, channel) => oldLogFxn(['CUSTOM_TAG', ...tags], data, channel);
            request._log = newLogFxn.bind(request);
        }
    });
...