[英]Log4j With Java Application Reading And writing
我有這樣的場景:這是使用 Java 和 Log4J
我有一個 id 列表,通過傳遞這個 id,我將獲取 id 的元數據。 獲得信息后,我需要將其推送到其他應用程序。
我的要求是這樣的:
當無法推送 ID 時,由於網絡故障或其他應用程序出現問題等任何問題,我需要將所有這些未推送到日志文件的 id 寫入。
從下一次運行開始,我必須讀取此日志文件並推送所有在上一次運行中未能推送的 id。 如果成功,則需要刪除日志,如果沒有,則保留它和/或不推送更多 id。
現在,我實現了一個 Log4j 系統,它簡單地將我們的應用程序消息記錄到一個日志文件中:
代碼如下:
log4j.rootLogger=DEBUG, stdout, file
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\logs\\logging.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
請給我一個建議如何使用 Java 代碼實現這一點。
你不應該為此使用 Log4J,這不是它的目的。 您應該使用不同的存儲(單獨的文件或數據庫)來保存此信息以便重新處理它。 Log4J 和日志記錄通常用於跟蹤應用程序執行以發現潛在問題等。它有自己的機制或寫作,它輪換日志文件,它添加了許多其他信息,適用於完全不同的東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.