FreeBSDのログローテ

うん~~
おおかた基本構成も決まったし、稼働させるとまたやるべき事があります、
ぼちぼちログローテートさせて、解析はどれか1台でまとめたい目論みです。

とりあえずローテート。。。
と、思ったらFreeBSDには別の何かlogrotateみたいなやつがいるらしい。。。
たしか以前はcronにまで書いたはず。
でもなんか切れてるログもある。

んーまー何も見てませんけどね。
いまのとこ中身は全然見てません。

ログが勝手に切れてるんで不思議だったけど、既に動作しているんですな。

newsyslogって奴らしい。
http://takaq1.plala.jp/freebsd/lotate/index.html
参考にさせていただきました。
平成15年までがどうとか、FreeBSDmo4.5とか5とか書かれているのでかなり古い情報だけど、newsyslog.confとかまんまだし
みたまんま記入。
対象のログファイルとパーミッション、保存数、切るタイミング、末尾にsig_numとかいう「ログ切ったで!」って通知する信号が必要らしい。
要は再起動させるとの事。
段階おって再起動、接続は切らずに慌てず再起動、落ちてたら起動させてくれるらしい。
省略してた強引に再起動させる。
それよりもSIGUSR1のがやさしいとの事。
マニュアル通りpidへ30番
/var/log/xxxx.a-po.info-access.log 644 20 * @T04 B /var/run/httpd.pid 30
/var/log/xxxxx.a-po.info-error.log 644 20 1000 * B /var/run/httpd.pid 30

こんな感じかしら
size の個所を*にすることで、whenが有効になる。
サイズ指定(単位はKbyte)で切りまわしたければ逆に、whenのほうを*に。
Apacheのアクセスログなので、毎日切って解析に渡したい。
エラーログなんかはサイズで切ったほうがよさそうだ。
時間は$D04と書くほうがいいのかな?

syslogdも元から立ち上がってんだけど。。。
さて。。。
syslogサーバーとして待ち受けを立てて、切ったログを渡すのが正解だよね?

あ!
125MBなんてバカでかいログがある!
。。。
先月で切ったログなので不要だけど。。。
こんなんは見ずに捨てます。。。
てか反省ですな。
ログを残しながら動作し続ける機械をいたわってやらねば

というより、ログローテは指定したファイル名の一致で処理が出来なかったっけ?
ログローテの処理漏れが無いように気をつけましょ

******************************************
翌日、問題なくローテートされてましたわ。
で。。。
どうやら存在しないログファイルについて記載してても問題ないみたいなのでWebサーバーのデフォルトのログファイルも記載しといた。
/var/log/httpd-access.log 644 20 1000 * B /var/run/httpd.pid 30
/var/log/httpd-error.log 644 20 1000 * B /var/run/httpd.pid 30

保険的にサイズ切り回しで。
実際に運用するときはファイル名変えたりするし、バーチャルホスト作るだろうからそんときに追記で。