本文へスキップ

logrotate 設計

Pro会員限定上級約39分6レッスン

既存の設定を読み、logrotate -d で「今回どう判定されるか」を事前に確かめてから、アプリ用の設定を入れます。ローテーション後もアプリが古いファイルに書き続ける create の罠を lsof で見抜き、copytruncate と postrotate で直します。

対象者: ログでディスクが埋まった経験がある方 / 自作アプリのログを安全にローテーションしたい方

前提知識: シグナル・優先度・開いているファイル 修了程度

この教材を終えると、できるようになること

  • logrotate の主なディレクティブの意味を説明し、logrotate -d の出力から今回ローテーションされるかどうかを読み取れるようになる。
  • app 用の logrotate 設定を /etc/logrotate.d/ に置き、ドライランで対象ファイルを確認できるようになる。アプリがログを開きっぱなしにしていることを lsof で確認できるようになる。
  • logrotate -f で強制的にローテーションし、lsof でアプリが退避後のファイル(app.log.1)を掴み続けていることを確認できるようになる。
  • copytruncate の仕組みと弱点を説明し、設定を sed -i で直して、アプリが新しい app.log に書いていることを確認できるようになる。
  • postrotate〜endscript で systemctl reload app を実行する設定を書き、アプリが新しい app.log を開き直したことと、status ファイルの記録を確認できるようになる。

修了後の姿: 障害の根本原因をログとコマンドで突き止められる、チームに頼られる運用エンジニアへ。

この講座はPro会員限定です。無料の会員登録後、無料レッスンのあるコースから学習を始められます。