2009年3月 5日

[Apache-Users 7303]IPv4/IPv6 dual stack における rotatelogs の書き方

** Apache ユーザーズメーリングリスト **
** 注意:このメールへの返信は Apache-Users へ行きます **

たかの と言います。こんにちは。

現在、FreeBSD 上において httpd-2.2.9 をソースから make して
IPv6/IPv4 のデュアルスタクでウェブサーバを稼働しています。

今まではログのローテートについて特に気にすることも無く、httpd
を停止して mv してから再起動して。と言う運用で間に合っていたので
すが、このたび rotatelogs を利用して運用する形式に変えてみました。

記述した設定の抜粋は一番最後に掲載します。


この設定でやっていることは以下になります。

・example.co.jp(IPv4 でのアクセス) にアクセスが有った場合は
logs/access-%Y%m%d.log に蓄積される。

・example.com の IPv4(name based) にアクセスが有った場合には
logs/access-com-%Y%m%d.log に蓄積される。
・example.com の IPv6(IP based) にアクセスが有った場合にも
logs/access-com-%Y%m%d.log に蓄積される。

・example.org の IPv4(name based) にアクセスが有った場合には
logs/access-org-%Y%m%d.log に蓄積される。
・example.org の IPv6(IP based) にアクセスが有った場合にも
logs/access-org-%Y%m%d.log に蓄積される。

と言うように設定し、要は同一ドメインであれば、IPv4 であろと IPv6
でのアクセスであろうと、同一のログファイルに蓄積したい。と言う設
定です。


このような場合の設定時、普通はどのように設定するのが一番良いの
でしょうか? google で検索してもいまいちヒットしないですし、以下
の点において危惧しております。

・rotatelogs プロセスがたくさん起動してしまい、それがサーバに負
荷を与えないか?
余談ですが httpd を worker コンパイルして起動した場合 ps -ax
で見ると rotatelogs のほうがプロセス数が多いです。 ps -axH だ
と逆転しますが;-)。

・VirtualHost ごとに rotatelogs を設定して、複数の VirtualHost
で同一のログファイルを指定しているとファイルハンドラの制御大丈
夫なのか?


ちなみに、現在、以下の設定で運用していますが、ログは正しく保存
されているようだし、ローテートも正しく行われているようです。

害は特に無いのかな。とは思うのですが、あまり美しくないかなぁ。
と言う気はしています。

このような運用形態でおすすめ、もしくは、この設定が正解です。と
言うようなものが有ればお教えいただけませんでしょうか。

たかの
---
Contact to me.
takachan[at]running-dog.net http://www.running-dog.net/
takachan[at]xn--w8j2bze0962a.jp http://xn--w8j2bze0962a.jp/


--- httpd.conf ---
Listen 192.168.1.80:80
ServerName example.co.jp:80
ErrorLog "logs/error.log"
CustomLog "| rotatelogs logs/access-%Y%m%d.log 604800 540" combined
Include conf/extra/httpd-vhosts.conf


--- extra/httpd-vhosts.conf ---
<VirtualHost 192.168.1.80>
DocumentRoot /home/www/html/com/
ServerName example.com
ErrorLog logs/com-error.log
CustomLog "| rotatelogs logs/access-com-%Y%m%d.log 604800 540" combined
</VirtualHost>

<VirtualHost [2001:192:168:1:80::1]>
DocumentRoot /home/www/html/com/
ServerName example.com
ErrorLog logs/com-error.log
CustomLog "| rotatelogs logs/access-com-%Y%m%d.log 604800 540" combined
</VirtualHost>

<VirtualHost 192.168.1.80>
DocumentRoot /home/www/html/org/
ServerName example.org
ErrorLog logs/org-error.log
CustomLog "| rotatelogs logs/access-org-%Y%m%d.log 604800 540" combined
</VirtualHost>

<VirtualHost [2001:192:168:1:80::2]>
DocumentRoot /home/www/html/org/
ServerName example.org
ErrorLog logs/org-error.log
CustomLog "| rotatelogs logs/access-org-%Y%m%d.log 604800 540" combined
</VirtualHost>

--
入退会・変更・配送一時停止は以下へ
http://mm.apache.jp/mailman/listinfo/apache-users


投稿者 xml-rpc : 2009年3月 5日 11:44
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/82793
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。