Python自帶的logging模塊本身并不具備自動刪除舊日志文件的功能。但是你可以結合使用logging模塊和第三方模塊進行實現。
一種常見的方法是使用logrotate這個Linux工具,它可以定期輪轉、壓縮和刪除日志文件。你可以在Python中調用subprocess模塊來執行logrotate命令,例如:
import subprocess
subprocess.call(["logrotate", "/etc/logrotate.conf"])
另外,你也可以自己編寫一個Python腳本來定期檢查日志文件大小,當超過一定大小時就刪除舊日志文件,例如:
import os
log_file = "mylog.log"
max_size = 1024 * 1024 * 10 # 10 MB
if os.path.isfile(log_file):
if os.path.getsize(log_file) > max_size:
os.remove(log_file)
這樣你可以在你的Python應用程序中定期調用這個腳本來刪除舊的日志文件。