Apache log 分割處理用的 mod_log_rotate

今天是 2006 最後一天,新年快樂!

以前提過使用 cronolog 作 Apache log 的分割處理,它是使用外部的程式去分割,但是今天在測試 Apache 2.2.3 的時候發現問題,可能是 Apache 的 bug,Apache 會發動愈來愈多的 cronolog.exe … 而且停 Apache 並不會停這些 process,這裡有討論.

在網上研究了一下,有人提供了 Apache 模組去達成同樣的功能 — mod_log_rotate,可以供 Apache 1.3 及 2.x 使用,它提供 c 的原始程式,另有網站提供了 Apache 2.0 及 2.2 在 Windows 平台編譯好的 module.

用法很簡單:

  1. 將 mod_log_rotate.so 放到 Apache 的 module 目錄,如 Apache2\modules.
  2. 在 httpd.conf 中加上
    LoadModule log_rotate_module modules/mod_log_rotate.so
    RotateLogs On (打開 log)
    RotateLogsLocalTime On (用 local time 算,default 是用 UTC 時間)
    RotateInterval 86400 (86400 是 default,也就是一天,這一行不加也可以)
  3. 原本用 cronolog 的地方
    CustomLog “|c:/bin/cronolog.exe logs/access_%Y%m%d.log” combined
    改成
    CustomLog logs/access_%Y%m%d.log combined

Ok !

(Visited 7,378 times, 1 visits today)

別人也看了:

盜連與Apache反盜連 Somewhere真是個無法無天的地方--竟然有人偷了本站文章,偷文章也就算了,文章內的圖還是連到本站佔用本站大量頻寬. 看看這個 "文學城" "http://web.wenxuecity.com/...
Apache 防制 DoS 攻擊的 mod_dosevasive 模組 吃燒餅沒有不掉芝麻的,而開網站的沒有不被攻擊的... 奇怪了,世界上還真多無聊人士,吃飽就想如何攻擊別人的網站,不知道是什麼心態. 一種常見的攻擊是貼廣告或是莫名其妙的留言,這些都是要廣告特定的 UR...
使用 cronolog 作 Apache log 的分割處理 使用 Apache, 它的 log 檔 default 是叫 access.log, 是一個連續且不斷長大的檔案, 只要 log 不是關閉狀態, 凡是用戶連向你的網站, 就會有像這樣的一筆記在 log...
Apache2 與 php5 / php4 安裝 本 WordPress 的 blog 之前已經由 IIS 換成 Win32 Apache, 今天又把 php 4.3 換成 php 5, 記錄一下修改的地方, 其實也蠻簡單的. 自己架設部落格的伺服器...
用 Apache 拒絕網路流氓的騷擾 Google, Yahoo 的搜尋引擎之所以可以搜尋到很多資料,是因為他們時時刻刻都派著 "robot" 在網路上巡邏,Google 的叫 googlebot, MSN 叫 msnbot, Yahoo...
分享:

“Apache log 分割處理用的 mod_log_rotate” 有 8 則迴響.

  1. 您好, 我使用 Apache 2.2.6, 然後用的是這個 http://www.apachelounge.com/download/mods/mod_log_rotate-1.00a-w32.zip. 結果一執行就跑出這樣的訊息, 請問我用的版本和你的一樣嗎?

    apache.exe: Syntax error on line 142 of D:/apache/conf/httpd.conf: Cannot load D:/apache/modules/mod_log_rotate.so into server: \xb5L\xaak\xb1\xd2\xb0\xca\xb3o\xad\xd3\xc0\xb3\xa5\xce\xb5{\xa6\xa1\xa1A\xa6]\xac\xb0\xc0\xb3\xa5\xce\xb5{\xa6\xa1\xaa\xba\xb3]\xa9w\xa4\xa3\xa5\xbf\xbdT\xa1C\xad\xab\xb7s\xa6w\xb8\xcb\xc0\xb3\xa5\xce\xb5{\xa6\xa1\xc0\xb3\xb8\xd3\xa5i\xa5H\xad\xd7\xb4_\xb3o\xad\xd3\xb0\xdd\xc3D\xa1C

  2. 沒有耶, 不過我裝好了, 然後因為我用的是官方版的 apache.exe, 所以也把 httpd.exe.manifest 放到 bin. 不過結果還是失敗, 訊息如下
    (Sys) 無法啟動這個應用程式,因為應用程式的設定不正確。重新安裝應用程式應該
    可以修復這個問題。
    我 httpd.conf 就加上這一段
    LoadModule log_rotate_module modules/mod_log_rotate.so

    RotateLogs On
    RotateLogsLocalTime On
    RotateInterval 86400

    會不會是得換成 Apachelounge 的才可以呢?

  3. 我也遇到Syntax error!

    在我自己的本本上(windowsXP)上安装apache2.2.8+mod_log_rotate.so,运行正常。但是我拿到服务器(windows2003 Server)上去,就无法启动apache,并报Syntax error,不知道该怎么继续了!

  4. Apache 2.0跑不起來嗎? 它說了:The mods below are build with Visual Studio C++ 2005(VC8) or 2008(VC9) against the Apache 2.2 headers and loads when Apache is build with Visual Studio C++ 2005, 2008 or the download from ASF http://httpd.apache.org. It will NOT load into Apache 2.0.x releases.

    你可以自己compile 2.0 mod_log_rotate(不容易)或升級成 Apache 2.2。以前有 for 2.0 的版本,現在沒了。

發表迴響