您可以運行使用服務器
java -classpath log4j.jar org.apache.log4j.net.SimpleSocketServer 4712 log4j-server.properties
的SimpleSocketServer
接收登錄遠程SocketAppender
發送到指定端口號的事件,並記錄他們,好像他們是本地產生,根據配置不同,供應log4j-server.properties
。您需要配置相關的控制檯/文件/滾動文件appender,並將它們附加到相關的日誌記錄程序,就像直接在原始進程中執行日誌記錄一樣,而不是通過網絡套接字管理日誌事件。即如果你目前正在製作的東西,如本地日誌文件:
log4j.rootLogger=DEBUG, file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=logfile.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%d] [%t] [%m]%n
然後讓發送方log4j.properties
只是說
log4j.rootLogger=DEBUG, server
log4j.appender.server=org.apache.log4j.net.SocketAppender
log4j.appender.server.Port=4712
log4j.appender.server.RemoteHost=loghost
log4j.appender.server.ReconnectionDelay=10000
和服務器端log4j-server.properties
包含的定義,你要改變它是之前在發送方:
log4j.rootLogger=DEBUG, file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=logfile.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%d] [%t] [%m]%n
特別是,請注意,沒有指定上的佈局的點發送端的- 網絡上發生的事情是整個日誌記錄事件對象,接收方負責進行佈局。
這些被稱爲命令行參數。 – Woot4Moo 2012-08-01 12:48:48