Информация об изменениях

Сообщение Re: Logging. Лучшие практики от 06.02.2019 9:24

Изменено 06.02.2019 9:27 vsb

Re: Logging. Лучшие практики
Я пока к такому варианту пришел.

error/fatal это то, чего происходить не должно. Логгируется в отдельный файл, любая запись в этом файле это баг, который надо исправлять.

warn это то, чего происходить не должно при нормальной работе. Например если есть HTML-форма, с неё приходит дата в формате дд.мм.гггг, а реально пришло что-то другое. Т.е. формально это не баг, система работает как положено, но реально что-то не то происходит. Тоже отдельный файл, который мониторится но он не обязан быть пустым.

info это все действия-изменения, произошедшие с системой. Чтобы видеть что там вообще происходит. Обычно в консоль пускается именно это. Залогинился, создал запись, удалил запись и тд. Эдакий примитивный аудит, чтобы если что, можно было быстро понять что там происходило с логической точки зрения.

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

trace — самая подробная отладка, которая не включается в обычном режиме. Можно включить для конкретного модуля если вдруг не хватает остальной информации. Тот же debug но без ограничений.

Формат — обычные текстовые файлы. Пока не ощущал необходимости в каких-то специальных продуктах для логов, но если вдруг надо, какая разница, это же всё тривиально настраивается.

Контекст — user ID и user IP. Этого хватает, чтобы вычленить действия именно этого юзера.
Re: Logging. Лучшие практики
Я пока к такому варианту пришел.

error/fatal это то, чего происходить не должно. Логгируется в отдельный файл, любая запись в этом файле это баг, который надо исправлять.

warn это то, чего происходить не должно при нормальной работе. Например если есть HTML-форма, с неё приходит дата в формате дд.мм.гггг, а реально пришло что-то другое. Т.е. формально это не баг, система работает как положено, но реально что-то не то происходит. Тоже отдельный файл, который мониторится но он не обязан быть пустым.

info это все действия-изменения, произошедшие с системой. Чтобы видеть что там вообще происходит. Обычно в консоль пускается именно это. Залогинился, создал запись, удалил запись и тд. Эдакий примитивный аудит, чтобы если что, можно было быстро понять что там происходило с логической точки зрения.

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

trace — самая подробная отладка, которая не включается в обычном режиме. Можно включить для конкретного модуля если вдруг не хватает остальной информации. Тот же debug но без ограничений.

Формат — обычные текстовые файлы. Пока не ощущал необходимости в каких-то специальных продуктах для логов, но если вдруг надо, какая разница, это же всё тривиально настраивается.

Контекст — user ID и user IP. Ну и имя потока, конечно. Этого хватает, чтобы вычленить действия именно этого юзера.