サーバーでログをローテーションするための代替手段が必要です。logrotateを実行するたびに、Apacheが10〜20分間ダウンします。これが正しいかどうかはわかりませんが、私には適切ではないようです。
Apacheでlogrotateの代替手段はありますか?ログをローテーションするのに長い時間は珍しいですか?
私のセットアップはFedoraコア9、Apache 2.2.14です
ありがとう。
私はクロノログが好きです。 Apacheは、使用するテンプレートに基づいてログに保存するcronologに出力をパイプできます。
グローバルスコープでこれらの2つのディレクティブを使用するサーバーでは、cronologのコピーが1つだけ開始され、ログの書き込みに使用されました。これにより、年と月ごとに新しいログファイルが作成されます。
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combinedvhost
CustomLog "|/usr/bin/cronolog /var/log/Apache2/%Y%m.combined.allhosts.log" combinedvhost
Logrotateに渡されたオプションを調べます。
私の経験では、copytruncate
を使用する必要があります(ログファイルが最初にコピーされ、次に切り捨てられます)。
これにより、logrotateの終了後にApacheを再起動する必要もなくなります。
logrotateを実行するたびに、Apacheが10〜20分間ダウンします。これが正しいかどうかはわかりませんが、私には正しくないようです。
いいえ-システムが壊れているようです-何か他のことを試すのではなく、修正したいと思います-logrotateは、適切に使用される非常に便利なツールです。
現在のlogrotateスクリプトはどのように見えますか?
C。
Apacheを手動で再起動した場合、10〜20分かかりますか?
ログのローテーションにこれほど長い時間がかかる場合は、Apacheがどこかでスタックしているようです。これは手動でも発生するか、ログを移動しようとしたときにlogrotateでディスクの問題が発生しています。
圧縮オプションはオンになっていますか?もしそうなら、あなたがそれをオフにするとどうなりますか?