logback日誌丟失的情況之一

2022-03-25 12:28:23 字數 742 閱讀 4635

在遊戲伺服器上線之後,會記錄很多統計日誌,這些日誌是第三方需要的資料,通過linux 的 rsync方式同步給第三方。日誌規則 每十分鐘會建立乙個日誌檔案。然後後台有乙個rsync程序,每隔十分鐘向第三方伺服器同步一次日誌檔案。測試的時候沒有問題,但是上線之後,發現在整點的時候,比如3:30,3:50的時候,日誌檔案只有前幾秒的資料。經過分析,在這個時候發生了rsync同步的操作,同步操作之後,日誌就再也寫不進去了。

解決方法是,把產生日誌的時間和同步的時間錯開,比如九分鐘產生乙個日誌檔案,十分鐘同步一次。而且把當前寫入的日誌檔案不要同步,只同步已經不再寫的日誌檔案。logback的配置如下:

$/logs/stat/stat.log

class="ch.qos.logback.core.rolling.timebasedrollingpolicy">

$/logs/stat/stat_%d.json

class="mytimebasedfilenamingandtriggeringpolicy">

1072000

%msg%n

配置中mytimebasedfilenamingandtriggeringpolicy是自定義 的乙個策略類,詳細見:

這樣配置,當前寫入的日誌檔案是stat.log,而不再寫入的檔案是stat_時間.json的檔案。同步的時候只同步.json的檔案即可。

logback日誌的整合

logback是由 log4j 創始人設計的又乙個開源日誌元件,是對log4j的公升級和改進。logback分為三個模組 logback core logback classic logback access,專案中如需要使用logback作為日 志展示,引入這三個模組的依賴 springboot天...

logback 設定不同包下的日誌級別

1 實現效果 專案的整體的日誌列印級別為error,但在某個包下或某個類想列印info級別的日誌。2 配置 file是error級別日誌列印 special 是info級別日誌列印 file與special唯一不同是日誌儲存路徑不同,其它策略相同 通過 logger標籤指定包路徑或類路徑並引用spe...

日誌元件logback的介紹及配置使用方法 二

四 logback的預設配置 如果配置檔案 logback test.xml 和logback.xml 都不存在,那麼 logback 預設地會呼叫 basicconfigurator 建立乙個最小化配置。最小化配置由乙個關聯到根 logger 的組成。輸出用模式為 d thread 5level ...