- - PR -
ログローテイトはするが、ファイルにログを吐き出さない(FreeBSD:newsyslog.conf)
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2003-11-11 16:46
SIGUSR1を入れてテストしたところ
newsyslog.confのエラーが以下のようにでました。 newsyslog: illegal pid file or signal number in config file: 〜(省略) 640 7 * @T01 Z SIGUSR1
/var/run/httpd.pid は、存在しています。
はい、確かに違っていました。 ↓↓↓↓↓↓↓↓↓↓ psコマンドの入れ方が間違っていました。 ps -ax | grep httpd で確認したところ、一致していました。
httpd.confでは <IfModule !mpm_netware.c> PidFile /var/run/httpd.pid </IfModule> となっています。 それなのに、吐き出さないのはなぜなんでしょうか? ログのサイズダウンだけのためのローテイトならよいのですが、 生ログをWebalizerで解析したいので、困っています。 どうぞよろしくお願いします。 何分、初心者のため変な質問になっているかもしれません。 なにか策があれば、教えてください。お願いします。 [ メッセージ編集済み 編集者: RUNNER_haru 編集日時 2003-11-11 22:52 ] | ||||||||||||
|
投稿日時: 2003-11-12 00:13
え〜と、それをやるなら (省略) Z /var/run/httpd.pid 30 です。 PIDは問題無さそうですねえ。 してみると、httpd が複数のログを書いている関係でしょうか。 ふつうはエラーログとアクセスログ、あるいはそれ以上に 分けているかと思いますが、どう設定されていますか? newsyslog.conf の中で apache に関する部分すべてを 書いて頂くと、アドバイスを得やすいかと思います。 # ひとによってやり方はいろいろで、newsyslog にあてる # パッチを作って対処した方もおられるようですが。 ちなみに私はこういう高級な道具は使えないので ![]() mv error_log error_log.old mv access_log access_log.old kill -s SIGHUP `cat httpd.pid` みたいなスクリプトを書いています。 # これでも絶対にログが途切れることなく正しく書かれる # ことが保証されます。Unixなら。 [ メッセージ編集済み 編集者: ぽんす 編集日時 2003-11-12 00:41 ] | ||||||||||||
|
投稿日時: 2003-11-12 00:19
oraいいます。
FreeBSDで、apacheということのようですが、apache自体の起動は、どのようにしていますか。可能であれば、apacheの起動スクリプトを載せてもらえないでしょうか。 また、newsyslog.confは、ログのはきだしは、制御していないと思います。 ログの吐き出しは、syslog.conf、及び各APの設定ファイル、起動ファイルです。 | ||||||||||||
|
投稿日時: 2003-11-12 00:40
おっと。言われてみれば、そんなことを言ってるように読める 書き方になってました。
というのは、httpd.conf で設定したログファイルすべてを newsyslog.conf の中でどう扱っていますか、ということです。 | ||||||||||||
|
投稿日時: 2003-11-12 11:34
引用:------------------------------------------------------------------------
というのは、httpd.conf で設定したログファイルすべてを newsyslog.conf の中でどう扱っていますか、ということです。 ---------------------------------------------------------------------------- ぽんすさん、失礼しました。私の受け取り違いでした。 テスト環境で、ちょっと検証してみます。 | ||||||||||||
|
投稿日時: 2003-11-12 21:16
oraです。
私の持っている検証環境で、Nameベースのバーチャルホストで、検証してみました。 ログファイルをバーチャルホストに分けた場合、分けずに1ファイルにした場合のいずれも、 ログのローテーション、書き出しができてしまいました。 newsyslog.confの設定は、RUNNER_haruさんと同じように usr/local/apache/logs/error_log 644 4 * 24 Z /usr/local/apache2/logs/httpd.pid としたんですが。 う〜ん、何が違うんだろう。 | ||||||||||||
|
投稿日時: 2003-11-13 21:36
ぽんずさん、oraさん、丁寧な回答ありがとうございます。
Nameベースのバーチャルホスト設定で エラーログとアクセスログを設定しています。
はい、私の方もこのように現在設定しています。 ここ2,3日、午前0時にローテイトするログが、今までまったく書き出さなかったものが 1時過ぎから書き出されるようになっています。 もう少し、様子をみようと思いますが、 アクセスが多いサイトだけに1時間遅れてログが吐き出されるのは 納得いかないのですが、いぜんよりなんとかましになってきました。 アクセスログばかり検証してきましたので、 エラーログに関してもnewsyslog.confに設定してみて 2,3日様子をみて見ます。 また、ご報告させて頂きます。 |