如何在运行时更改log4j jdbc适配器db位置

时间:2012-06-14 15:04:02

标签: java log4j

以下是我的log4j的jdbc适配器,如何在运行时更改dblocation

log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DB.driver=org.sqlite.JDBC
log4j.appender.DB.URL=jdbc:sqlite:{To change}
log4j.appender.DB.user=
log4j.appender.JDBC.commit=true
log4j.appender.DB.threshold=trace
log4j.appender.DB.sql=INSERT INTO sfLog(UserID,UserName,IPAddress,Port,UserAgent,Type,Status,Message,Date) VALUES('%X{UserID}','%X{UserName}','%X{IP}','%X{Port}','%X{Agent}','%X{Type}','%X{Status}','%m','%d{dd-MM-yyyy HH:mm:ss}')
log4j.appender.DB.layout=org.apache.log4j.PatternLayout

1 个答案:

答案 0 :(得分:0)

您可以在JVM命令行上使用属性占位符和-D:

e.g。

log4j.appender.DB.URL=${myDbUrl}

然后在您的JVM命令行中,您将包含以下内容:

-DmyDbUrl=blahblahblah

或者你可以使用System.setProperty,但是你必须在log4j初始化之前这样做。

相关问题