Использование org.apache.log4j.jdbc.JDBCAppender
, как я могу получить stracktraces, зарегистрированный с warn
и error
в PatternLayout
.Log4j JDBCAppender loglogtraces
Я вход как
logger.warn("warning description", e);
logger.error("error description", e);
Я получаю описание строк в таблицу, но StackTrace в метательном сейчас находится где. Есть ли еще один параметр, который я могу получить через PatternLayout
. В настоящее время я использую
"INSERT INTO app_logs (app, log_date, log_level, location, loc, message) VALUES ('my-apps-name', '%d{ISO8601}','%p', '%C.java', '%C{1}.java:%L', '%m')"
в таблицу
TABLE `app_logs` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`app` varchar(255) DEFAULT NULL,
`log_date` varchar(255) DEFAULT NULL,
`log_level` varchar(255) DEFAULT NULL,
`location` varchar(255) DEFAULT NULL,
`loc` varchar(255) DEFAULT NULL,
`message` text,
PRIMARY KEY (`id`)
)
Это решение работает нормально, но трассировки стека может иметь запятые или одиночные кавычки, и мы должны дезинфицировать данные, для которых вы должны переопределить функцию getLogStatement, как показано Sangeet Kumar здесь, в одном из его ответов. – Gaurav
Я знаю это старое сообщение. Хотел указать, что ссылка в ответе нарушена. Не могли бы вы обновить ссылку в интересах тех (как я), которые заинтересованы в этом решении. – Chiseled
Должно быть исправлено. – MikeNereson