我試圖讓Apache根據當前日期每天創建一個新的錯誤日誌文件。 默認的錯誤日誌文件名是這樣的: 錯誤日誌「/logs/error.log」在apache中設置錯誤日誌文件名以包含當前日期
,我希望它是這樣的: 錯誤日誌「/logs/error_$year$month$day.log」
任何想法?
我試圖讓Apache根據當前日期每天創建一個新的錯誤日誌文件。 默認的錯誤日誌文件名是這樣的: 錯誤日誌「/logs/error.log」在apache中設置錯誤日誌文件名以包含當前日期
,我希望它是這樣的: 錯誤日誌「/logs/error_$year$month$day.log」
任何想法?
看看Cronolog
的cronolog是一個簡單的過濾程序 從 標準輸入讀取日誌文件條目,並寫入每個條目 由一個 文件名模板中指定輸出文件和當前日期 和時間。當擴展文件名 更改時,當前文件將關閉 並打開一個新文件。 cronolog是 打算與 一起使用與Web服務器,如Apache, 將訪問日誌拆分爲每日或 每月日誌。
謝謝,我會嘗試這種方法。我同時在apache.org文檔中看到,這可能是要走的路。 – 2009-07-16 13:22:35
我的辦法是配置logrotate的爲Apache旋轉Apache的日誌,每天再一次..
有關每個日誌行,而不是具有自定義日誌的最新信息:
%...{format}t: The time, in the form given by format, which should
be in strftime(3) format. (potentially localized)
您必須使用strftime(man 3 strftime)格式規則:
%F or its equivalent without dashes %Y%m%d
所以:
# CustomLog with explicit format string
CustomLog my_log "%{%Y%m%d}t %h %l %u %t \"%r\" %>s %b"
凡%{%Y%M%d}牛逼沒有工作
這是否記錄了文件名或記錄的實際消息? – 2009-07-16 11:07:29
更改這個在httpd.conf
ErrorLog "|bin/rotatelogs /var/logs/errorlog.%Y-%m-%d-%H_%M_%S 5M"
此配置將旋轉錯誤日誌文件大小達到5兆字節時,日誌文件名稱的後綴將以errorlog.YYYY-mm-dd-HH_MM_SS格式創建。
哪個操作系統? – 2009-07-16 10:55:31