ユーザ用ツール

サイト用ツール


os:freebsd:tips:newsyslog

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
os:freebsd:tips:newsyslog [2025/07/01 01:45] – 作成 hayashios:freebsd:tips:newsyslog [2025/07/01 02:01] (現在) hayashi
行 1: 行 1:
-====== 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の例 ====
 +
 +<file /etc/newsyslog.conf.d/>
 +# 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
 +</file>
 +
 +===== 設定の確認 =====
 +
 +
 +以下のコマンドで、構文が正しいか、また次にローテーションが実行される予定日時を確認できる
 +
 +  # newsyslog -nv
 +
 +このコマンドは実際にはローテーションを実行せず、シミュレーション結果のみを表示
 +設定ファイルはcronにより自動で読み込まれるため、手動での**サービス再起動は不要**
os/freebsd/tips/newsyslog.1751334335.txt.gz · 最終更新: by hayashi