nginxアクセスログファイルのサイズを制限して圧縮する方法は?


18

ドメインのアクセスログで切り捨てとgzipを設定する方法について、何らかの方向性を得たいと思っています。コアnginxアクセスログはデフォルトで分割および圧縮されますが、個々のアクセスログは増え続けています。

これはセットアップできるもので、nginx、またはコアログを管理しているシステム上の他の何かによって処理されますか?


使用しlogrotateますか?
マイケルハンプトン

回答:


25

/etc/logrotate.d/nginx

/var/log/nginx/access_log {
    rotate 7
    size 5k
    dateext
    dateformat -%Y-%m-%d
    missingok
    compress
    sharedscripts
    postrotate
        test -r /var/run/nginx.pid && kill -USR1 `cat /var/run/nginx.pid`
    endscript
}

1
驚くばかり。Logrotateは私にとって初めてのことでした。今では完全に理にかなっています。ありがとう!

man logrotate詳細については。
セス

1
:私はそれが新しい設定で起動するために以下のことをしなければならなかったsudo logrotate -v -f /etc/logrotate.d/nginx
talsibony

ログを実際にローテーションするコマンドは「kill -USR1 /var/run/nginx.pid」です。これは、Nginxプロセスを強制終了するのではなく、ログファイルをリロードさせるシグナルを送信します。これにより、新しい要求が更新されたログファイルに記録されます。出典
エドソン・ホラシオ・ジュニア

誰かがこれらが何であり、これが何をしているのかを説明できますか?
エスカルース
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.