web-dev-qa-db-ja.com

error_logファイルサイズを制御する方法

Apacheサーバーに複数のerror_logファイルが表示されます。例:error_log、error_log.1、error_log.2、error_log.3、error_log.4。。

最初は、error_logという名前で単一のファイルが作成されていると思います。次に、単一ファイルの制限の後、error_logファイルのすべての内容がerror_log.1に移動され、新しいエラーがerror_logに挿入されます。

サーバーがerror_logの新しいエラーファイルを作成することを決定したときのファイルサイズの制限OR)を理解したい。これは構成可能である必要があると思いますか?

また、例に挙げたすべてのファイルのファイルサイズが異なることに気づきました。

このプロセスがどのように機能するかを理解するのを手伝ってください。

2
Kumar Soneta

Logrotateと呼ばれるこのツールは、多数のログファイルを生成するシステムの管理を容易にするように設計されています。これにより、ログファイルの自動ローテーション、圧縮、削除、およびメール送信が可能になります。

各ログファイルは、毎日、毎週、毎月、または大きくなりすぎたときに処理される場合があります。このツールを使用すると、より少ないディスク容量でログをより長く保持できます。詳細については、以下を参照してください: http://linuxers.org/howto/howto-use-logrotate-manage-log-files

3
kathir

Jonathan が言うように、デフォルトのサイズは1MBを超えていますが、Apacheをより大きなサイズに構成することもできます。たとえば、 Apache Documentation は次のように表示されます。

CustomLog "|bin/rotatelogs /var/logs/logfile 5M" common

この構成では、ログファイルが5メガバイトのサイズに達するたびにログファイルがローテーションされます。

 ErrorLog "|bin/rotatelogs /var/logs/errorlog.%Y-%m-%d-%H_%M_%S 5M"

このもう1つは、5メガバイトのサイズに達するたびにエラーログファイルをローテーションし、ログファイル名のサフィックスはerrorlog.YYYY-mm-dd-HH_MM_SSの形式で作成されます。

1

標準構成では、Apacheはログファイルのサイズが1MBを超えているかどうかを毎日チェックします。ファイルがこの制限を超えると、ローテーションされます。

このチュートリアル に従って、デフォルトの動作を変更する方法を学ぶことができます。

1