0

以下は、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
4

1 に答える 1

0

JVM コマンド ラインでプロパティ プレースホルダーと -D を使用できます。

例えば

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

次に、JVM コマンド ラインに次のようなものを含めます。

-DmyDbUrl=blahblahblah

または、System.setProperty を使用することもできますが、log4j を初期化する前にそれを行う必要があります。

于 2012-06-14T15:41:25.073 に答える