ユーザ用ツール

サイト用ツール


サイドバー

このページの翻訳:



最近の更新



Tag Cloud

01_linux:99_その他:39_logrotate_test

39 💻logrotateのテスト

ログローテートのテストを行うのに、毎晩確認するのは手間がかかる。
シェルを直接叩くときは成功するのに、実際にログローテートすると失敗してたりする。(パスやパーミッションなど)
そこでテストする方法をメモ

確認

/etc/cron.daily/logrotate を見ると、「/var/lib/logrotate/logrotate.status」のステートファイルを確認してローテート実行するようになっている。

# cat /etc/cron.daily/logrotate 
#!/bin/sh

/usr/sbin/logrotate -s /var/lib/logrotate/logrotate.status /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
    /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0

logrotate.status を修正

この日付の部分を修正する。
例えば1日前とか、1週間前とかテストしたいログのローテートのスパンによって変える。

一部抜粋

# cat /var/lib/logrotate/logrotate.status 
logrotate state -- version 2
"/var/log/yum.log" 2021-3-23-9:20:30
"/var/log/maillog" 2021-3-23-9:20:30
"/var/log/secure" 2021-3-23-9:20:30
"/var/log/messages" 2021-3-23-9:20:30
・
・
・

cronで実行

実際に本番を想定してCronで実行する。

これは10:00に実行する例

0 10 * * * bash -x /etc/cron.daily/logrotate > /tmp/logrotate.log
01_linux/99_その他/39_logrotate_test.txt · 最終更新: 2021/03/24 07:53 by matsui