ユーザ用ツール

サイト用ツール


os:freebsd:tips:newsyslog

文書の過去の版を表示しています。


ログローテート / newsyslog

設定ファイル

/etc/newsyslog.conf.d/に、nginx.confなどの任意の名前でファイルを作成

書式

以下の書式でログローテーションのルールを記述

logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]
パラメータ説明
logfilenameローテーション対象のログファイルパス
*などのワイルドカードも使用可能
[owner:group]ローテーション後のファイルの所有者とグループを指定
modeファイルのパーミッションを8進数で指定
count保存するバックアップログの世代数
sizeファイルサイズがこの値(キロバイト単位)に達した際にローテーションを実行
*を指定するとサイズでの判定は無効
whenローテーションを実行するタイミングを指定
$D<hour>で毎日、$M<day>D<hour>で毎月指定した日時に実行
flags動作を制御するオプションです
- B: ログファイルにローテーションメッセージを残しません
- G: logfilenameにワイルドカードが含まれていることを示します
- J: bzip2で圧縮します
- X: xzで圧縮します
- Z: gzipで圧縮します
[/pid_file]シグナルを送信するプロセスのPIDが記録されたファイルのパス
nginxの場合は/var/run/nginx.pidを指定
[sig_num]ログファイルを再オープンさせるために送信するシグナル番号
nginxはUSR1シグナルでログファイルを再オープンするため、シグナル番号として30(SIGUSR1)を指定

Nginxの例

# logfilename        [owner:group] mode count size when flags [/pid_file]        [sig_num]
/var/log/nginx/*.log root:wheel    644  7     *    $D05 JG    /var/run/nginx.pid 30
os/freebsd/tips/newsyslog.1751335076.txt.gz · 最終更新: by hayashi