iT邦幫忙

0

Python logging 無法刪除舊日誌

  • 分享至 

  • xImage

請問各位大大一個日誌備份的問題:

目前專案使用 multiprocessing 使用了日誌套件 concurrent-log中的 ConcurrentTimedRotatingFileHandler,但最近發現除了本地環境外,其他環境下不會刪除舊的日誌檔案,。

所有環境包含本地的 OS 都是 linux,本地啟動 log 是用 script ,其他環境是先啟動 docker container 接著呼叫 script。

script 中會先拿取環境變數再實例化 ConcurrentTimedRotatingFileHandler 時傳入環境變數,後面接著會印出關於 logging handler 的訊息(路徑、備份數量backupCount等)。這在容器中可以看到設定的環境變數被印出,所以似乎不是環境變數的問題。

在容器中執行 logging getFilestoDelete 的程式碼可以刪除過舊檔案,所以權限也沒問題。但不知為何日誌在 rotate 時似乎正確使用 backupCount 參數。

想問各位是否遇過類似問題,目前想不出往哪個方向解決,若解決不了可能只能換其他套件或是自己做一個了,感謝大家

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答