0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

rsyslogで取得しているログが logrotate でローテ―ト後に更新されないとき

Posted at

Samba auditログをrsyslogで取得する機能を実装中、logrotate後にログファイルが更新されず一瞬詰まったので、解決方法を共有させて頂きます。

問題

/etc/rsyslog.d/sample.conf
local5.* /mnt/system/logs/samba/audit.log;RSYSLOG_FileFormat
/etc/logrotate.d/sample
/mnt/system/logs/samba/audit.log {
    create 0644 syslog adm
    ifempty
    dateext
    dateformat .%Y-%m-%d
    maxsize 5G
    missingok
    compress
    monthly
    rotate 12
}

上記のように、rsyslogでログを取得している場合、logrotateが実行された後にログファイルが更新されなくなってしまいました。

解決方法

logrotateが実行された後、systemctl restart rsyslog すると直りました。
これを以下の通りlogrotateの postrotate で自動化して解決しました。

/etc/logrotate.d/sample
/mnt/system/logs/samba/audit.log {
    create 0644 syslog adm
    ifempty
    dateext
    dateformat .%Y-%m-%d
    maxsize 5G
    missingok
    compress
    monthly
    rotate 12
+   postrotate
+     /bin/systemctl restart rsyslog
+   endscript
}

ちょっと書き方独特ですね。endscriptをお忘れなく。

以上!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?