Apacheのerror_logとaccess_logを管理する方法は?

Apacheのerror_logとaccess_logを管理する方法は?

error_log私のファイルがますます大きくなっていることを確認しました。

LogLevelを変更してみましたhttpd.conf

LogLevel debug

到着

LogLevel emerg

favicon.icoただし、まだ見つからないというエラーが表示されます。

を削除すると再起動がerror_log必要になり、apache現在のビューアに少しダウンタイムが発生します。

  • 通知する方法がありますか?apache いいえ何を書きますかerror_log
  • それとも(閉じていない場合)1MBを超えないようにする方法はありますか?

「アーカイブ」が作られていることはわかりましたが、まったく作らないほうがaccess_logsいいです。

これらのアーカイブはaccess_logs削除されますか、それとも直接削除する必要がありますか?

答え1

logrotateログを回転させ(日付、サイズなどに基づいて)、アーカイブするファイルの数を選択できるを使用できます。たとえば、これは私のApache設定ファイルです。

/var/log/apache2/*.log {
        weekly
        missingok
        rotate 52
        compress
        delaycompress
        notifempty
        create 640 root adm
        sharedscripts
        postrotate
                if /etc/init.d/apache2 status > /dev/null ; then \
                    /etc/init.d/apache2 reload > /dev/null; \
                fi;
        endscript
}

答え2

次のようなものを使用できますタイミングログWebサーバーのログファイルを管理します。 cronologを使用すると、Webサーバーをシャットダウンして再起動しなくてもログファイルを自動的に循環できます。

抜粋

cronologは、標準入力からログファイルエントリを読み込み、ファイル名テンプレートと現在の日付と時刻で指定された出力ファイルに各エントリを書き込む単純なフィルタプログラムです。拡張ファイル名が変更されると、現在のファイルが閉じて新しいファイルが開きます。 cronolog は、Apache などの Web サーバーで使用して、アクセスログを毎日または毎月のログに分割するように設計されています。

関連情報