Как мы прокачали логирование в Node.js

Влад Убей-Волк
Влад Убей-Волк · 10 июня 2021
Node.js Backend Developer

OpenSource кубики Byndyusoft™ пополнились библиотекой pino-logger-factory для настройки nestjs-pino , который мы используем для логирования. В честь этого события хотим предложить вам небольшое объяснение конфигурации по умолчанию на примере эволюции одного лога.

12 Factor учит нас тому, что логи должны быть в JSON формате и выводиться в stdout приложения:

В этом логе мы понимаем что произошло и когда, но нам катастрофически не хватает доп. информации о самом сервисе:

Если будет несколько логов в рамках одного запроса, то их нужно связать общим контекстом:

Одинаковых логов может быть очень много, поэтому нам важно уметь их отличать:

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

Следите за новыми репозиториями и обновлениями текущих на нашем https://github.com/Byndyusoft.