- blogs:
- cles::blog
2007/01/04

suexec_logをcronologでローテートする

普段、apacheは全てcronologで自動的にローテートされるようにしているのですが、ひとつだけcronologを使うことができないファイルがあってちょっと気になっていました。その曲者はsuexec_log。
suExecを有効にしたときにオプションで出力することができるログなんですが、Apacheの通常のログと違ってディレクティブで指定するのではなく、./configure時にオプションによってファイル名を指定する形式になっています。このため、出力を直接cronologに渡すことができません。
--with-suexec-logfile=FILE
suEXEC の処理とエラーが記録されるファイル名を指定します。 (監査やデバッグ目的に有用) デフォルトではログファイルは suexec_log という名前で、 標準のログファイルディレクトリ (--logfiledir) に置かれます。
このような仕様のため、ローテートは自作のスクリプトでやっていました。ところが、Apacheのログをmultilogに取らせるというエントリにあるrdfifoと名前つきパイプ*1を使えばsuexec_logをcronologに通すことができることがわかりました。
ITUKI over TCP / TimePlant
rdfifo 1,089バイト 2003.05.20 Version 0.1
UnixでFIFOの内容をSTDOUTに出力する、至って単純なプログラムです。ソース見ると分かりますが、30行ほどです。 多分、バグもないでしょう……(あったりして(^^;) 問答無用でファイルにデータを吐き出すプログラムもこれを使えば標準出力に出力することが出来ます。 Apacheのログをdaemontoolsのmultilogで取るときに使ってます。
なるほどね。名前つきパイプを使うという発想は自分にはありませんでした。
欠点としては、パイプを読み出す側を先に起動しておかないとApacheがブロックしてしまうことでしょうか。落ちないようにdaemontoolsで監視するようにしました。
- *1: named pipe
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/1799
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(114449)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112967)
3 . 年次の人間ドックへ(112391)
4 . 2023 年分の確定申告完了!(1つめ)(111960)
5 . 三菱鉛筆がラミーを買収(111833)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112967)
3 . 年次の人間ドックへ(112391)
4 . 2023 年分の確定申告完了!(1つめ)(111960)
5 . 三菱鉛筆がラミーを買収(111833)
cles::blogについて
Referrers