Я полностью согласен с тем, что сказал Ххафез и Нос. Вы идете по правильному пути с пакетом регистрации, а не пытаетесь свернуть свой собственный. Это намного чище и легче получить права. Ведение журнала в текстовом файле намного проще для управления в долгосрочной перспективе (с учетом типичных наборов навыков проекта), чем ведение журнала в БД, хотя, если вы планируете какой-либо сложный анализ сообщаемых данных, иногда проще просто иметь его уже в БД.
Если отладка является одной из ваших заявленных целей при внедрении решения для ведения журналов, то крайне важно, чтобы вы заранее стандартизировали все уровни журналирования и включили эту часть в процесс проверки кода. Имейте достаточно различий в гранулярности, чтобы вы могли постепенно увеличить глубину отчетности, перейдя на следующий уровень. Очень неприятно, если вы решаете проблему с проблемой PROD, не имеете достаточного количества информации в журнале, чтобы увидеть проблему, затем переходите на следующий уровень ведения журнала и полностью забиваете журналы с таким большим выбросом, что вы не можете видеть лес за деревьями (и ваши логи катятся каждые 5 минут из-за громкости). Я видел, как это произошло.
В большинстве случаев регистрации текстовых файлов производительность не должна быть проблемой. Это немного сложнее с журналированием БД. Выполнение вставки является лишь немного более интенсивным, чем добавление к текстовому файлу, но именно объем на единицу времени делает его гораздо более уродливым в масштабе.
Кроме того, если вы собираетесь проводить какой-либо анализ журнала в автономном режиме, вам следует выбрать формат файла журнала, который легко расширяется и не потребует огромных изменений в коде анализа, если вам нужно что-то добавить в журнал. Держитесь подальше от вложенных, составных структур сообщений. Разбор тех становится болью.
Удачи с этим!