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