这是数据库架构log4j的日志记录到PostgreSQL不工作
create table log4j_messages
(
message varchar(2000),
class varchar(255),
priority varchar(64),
log_date timestamp
);
以下是我的log4j属性
log4j.appender.jdbc=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.jdbc.driver=org.postgresql.Driver
log4j.appender.jdbc.URL=jdbc:postgresql://MYSERVER:5432/logs
log4j.appender.jdbc.user=logs
log4j.appender.jdbc.password=MYPASS
log4j.appender.jdbc.sql=INSERT INTO log4j_messages (message, class, priority, log_date) values ('%m', '%c', '%p', to_timestamp('%d', 'YYYY-MM-DD HH24:MI:SS,MS'))
没有数据记录到数据库中。无论如何,我可以找出问题所在?
编辑:
我试图在属性上添加log4j.rootCategory = DEBUG文件,而现在我得到以下警告。
log4j:WARN记录器(myprogram.Main)找不到appender。 log4j:WARN请正确初始化log4j系统。 log4j:警告有关更多信息,请参见http://logging.apache.org/log4j/1.2/faq.html#noconfig。
下面是写入文件
log4j.rootCategory=DEBUG, R, O
# Stdout
log4j.appender.O=org.apache.log4j.ConsoleAppender
# File
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=log4j.log
# Control the maximum log file size
log4j.appender.R.MaxFileSize=500KB
# Archive log files (one backup file here)
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.O.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=[%d{ISO8601}]%5p%6.6r[%t]%x - %C.%M(%F:%L) - %m%n
log4j.appender.O.layout.ConversionPattern=[%d{ISO8601}]%5p%6.6r[%t]%x - %C.%M(%F:%L) - %m%n
确保路径中有jdbc jar。你正确的日志级别(调试/错误?)?最后 - appender不会记录异常。 http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/jdbc/JDBCAppender.html – Jayan
Postgresql预计在秒和毫秒之间的点不是逗号。 – Eelke
我改变它到一个点,仍然无法正常工作。我在Eclipse中也有jarpath,我也尝试将它放在bin文件和项目文件中。 – Arya