Как добавить unique_id в мои журналы экспресс-узлов с помощью winston без всякого рефакторинга?

У меня есть приложение Express. Я хотел бы отследить все записи, которые были сделаны одним запросом.

Apache имеет модуль под названием mod_unique_id который вводит в заголовки запроса специальный, содержащий уникальный хеш. Я хотел бы использовать такой хэш при регистрации (что угодно).

Например, если пользователю назначается apache значение unique_id со значением "abcdefg" и где-то в моем коде (контроллер, модель или что-то еще), я создаю журнал отладки, к которому я хотел бы присоединить "abcdefg" к каждой записи журнала.

Единственная идея, которая приходит мне в голову, - это создать экземпляр регистратора, используя app.use() и передать этот экземпляр регистратора ВСЕМ функциям, которые необходимы (модели, библиотеки и т. д.) для генерации правильного ответа.

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

Кто-нибудь знает лучший способ иметь один экземпляр "logger" для "запроса", который как-то доступен, не передавая этот "per-request-made-logger" чему-либо?

PS: я сейчас использую winston войти

0 ответов

Другие вопросы по тегам