フォルダの下に/var/log/httpd
膨大な容量のファイルが作成されました!
この問題を処理できる古いファイルを自動的に圧縮するには、どのソリューションを使用できますかlogrotate
?
それでは、そのフォルダの下の古いファイルを圧縮するようにLinuxシステムをどのように設定できますか?
2番目の質問:これらのファイルはどういう意味ですか?
13:16:50 root@BillGates-Machine:/var/log/httpd # ls -ltr
-rw-r--r-- 1 root root 7612 Jan 30 05:51 ssl_error_log-20160131
-rw-r--r-- 1 root root 16170199 Jan 31 03:29 ssl_request_log-20160131
-rw-r--r-- 1 root root 14677353 Jan 31 03:29 ssl_access_log-20160131
-rw-r--r-- 1 root root 425621646 Jan 31 03:38 access_log-20160131
-rw-r--r-- 1 root root 77267 Jan 31 03:38 error_log-20160131
-rw-r--r-- 1 root root 11233 Feb 7 03:43 ssl_error_log-20160207
-rw-r--r-- 1 root root 16398688 Feb 7 03:44 ssl_request_log-20160207
-rw-r--r-- 1 root root 14867381 Feb 7 03:44 ssl_access_log-20160207
-rw-r--r-- 1 root root 471057664 Feb 7 03:48 access_log-20160207
-rw-r--r-- 1 root root 101611 Feb 7 03:48 error_log-20160207
ベストアンサー1
logrotate
回転するファイルを圧縮することは可能ですが、アプリケーションによって作成されたログファイル名が静的でない場合(ここでのようにファイル名に日付サフィックスがあるため)、正しく機能しません。これは、日付サフィックスを含めないように(つまり、書き込みのみを行うために)HTTPサーバー(Apache?)を再構成する場合にaccess_log
機能します。error_log
logrotate
以下は、このように構成する方法を示すサンプルソリューションです。
これは、ログファイルの命名スキームを維持したい場合でも解決策があるもう1つの関連質問です。logrotateを使用せずに操作を実行するカスタムスクリプトを使用します。
簡単に言えば、これらのファイルの意味は次のとおりです。
- access_log:一般的なHTTPリクエストの成功
- error_log:エラーが発生した純粋なHTTPリクエスト
- ssl_request_log:成功したHTTPSリクエスト
- ssl_error_log:エラーが発生したHTTPSリクエスト
(もちろん、構成がこのロジックから外れる可能性があります)