在CentOS系統中,為Golang應用程序設置日志過期時間通常涉及到兩個方面:日志文件的滾動和日志文件的清理。這里我們將使用logrotate工具來實現這個功能。
sudo yum install logrotate
golang-app-logrotate.conf
的logrotate配置文件,用于配置Golang應用程序的日志滾動和清理策略。您可以根據需要修改此文件:sudo vi /etc/logrotate.d/golang-app-logrotate
golang-app-logrotate.conf
文件中,添加以下內容:/path/to/your/golang/app/logs/*.log {
daily
rotate 7
compress
missingok
notifempty
create 0640 root root
}
這里的配置表示:
daily
:每天滾動日志文件。rotate 7
:保留最近7天的日志文件。compress
:壓縮舊的日志文件。missingok
:如果日志文件不存在,不會產生錯誤。notifempty
:如果日志文件為空,不進行滾動。create 0640 root root
:創建新的日志文件,權限為0640,屬主為root,屬組為root。請將/path/to/your/golang/app/logs/*.log
替換為您的Golang應用程序日志文件的實際路徑。
保存并關閉配置文件。
測試logrotate配置是否正確:
sudo logrotate -f /etc/logrotate.d/golang-app-logrotate
這將強制執行一次日志滾動和清理操作。您應該能看到舊的日志文件被壓縮并刪除。
現在,您的Golang應用程序的日志文件將根據配置的策略自動滾動和清理。如果您希望定期執行此操作,可以將logrotate添加到cron任務中。