На моем рабочем месте мы написали собственный app4 log4j, который записывает сообщения журнала в базу данных (использует выделенный поток асинхронно, поэтому производительность не снижается).Я предпочитаю это больше, чем писать в файлы журналов - журнал на основе базы данных гораздо проще запрашивать и анализировать.
Есть ли решение с открытым исходным кодом, которое делает это (особенно для log4j, или для любых других java-регистраторов))?
Некоторые вещи, которые есть у нашего аппендера, и я хотел бы видеть в альтернативе:
- Записывает исключения (дух!)
- Записи в базу данных поступают изотдельный поток / пул
Наш аппендер поддерживает следующие столбцы, и я хотел бы видеть их все в любом найденном нами решении.
- LogId
- Время
- сообщение
- трассировка стека
- идентификатор процесса
- идентификатор потока
- имя машины
- компонент
- Уровень (debug / info / warn /...)
- ThreadName