ふとcronのログを見ていると以下のようなログが発生していました。
/etc/cron.daily/logrotate: error: swatch:2 unexpected text error: swatch:3 unexpected text error: swatch:4 unexpected text
/etc/cron.daily/logrotateにswatchのスクリプトなんか書いたかな?と見てみると以下の通り。
#!/bin/sh /usr/sbin/logrotate /etc/logrotate.conf EXITVALUE=$? if [ $EXITVALUE != 0 ]; then /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]" fi exit 0
swatchについては書いていませんが/etc/logrotate.confを実行しているということで見てみると以下の通り。
# RPM packages drop log rotation information into this directory include /etc/logrotate.d
そういえば/etc/logrotate.dディレクトリの設定ファイルを読み込んでログローテートしてるんでした。
(こういうのって設定するときは理解してても、しばらく放置してると忘れますねw)
ということで/etc/logrotate.d/swatchを開いてみるとどうやら行の途中から#でコメントアウトするとunexpected textエラーになるようです。
そこで行頭から#をつけてコメント行の形に変更しました。
具体的には以下のようなコメントを
/var/log/swatch/swatch.log { missingok # ログファイルがなくてもエラーを出さない
↓こんな感じにコメント行に変更
/var/log/swatch/swatch.log { # ログファイルがなくてもエラーを出さない missingok
その後/etc/cron.daily/logrotate実行時にエラーが出ることはなくなりました。
しかし、昔は行の途中から#でコメントアウトできていたと思うのですが、仕様が変わったんでしょうか…。