我是logback的新手。我對它很着迷,但我不確定它是否適合我的用例。我可以在運行時使用logback關閉並重新打開日誌文件嗎?
我想有一個記錄器,我可以停下來並開始。當它停止時,我想從文件系統中刪除日誌文件。重新啓動日誌時,應該重新創建該文件。
Logback是否可以做到這一點?在日誌記錄暫停的時候,我是否應該避免在我的類中調用Logger,或者可以使用logback來處理?
我目前使用slf4j.Logger。在manual我看到Appender objects implement the LifeCycle interface, which implies that they implement start(), stop() and isStarted()
。
我認爲這意味着他們可以停止,所以我可以移動的文件,但後來有云:
如果附加器無法啓動,或者如果它已經停止,一個 警告信息通過logback的內部狀態 管理系統發佈。經過多次嘗試後,爲了避免內部狀態系統被複制相同的警告消息 ,doAppend()方法將停止發出這些警告。
這是否意味着我可以阻止它,然後刪除文件,然後重新啓動?
如果你downvote,請說明理由:) – n611x007
在Log4j,你可以使用DOMConfigurator切換配置運行時(你可以用它來停止記錄或切換記錄器使用其他目錄/文件),所以你可以在Logback中使用類似的類。 Logback是Log4j的分支,所以它應該**具有類似的東西。 –