ITblog

hhvmのログローテーションの設定方法

2017年03月15日

運用しているとあるサイトのサーバが低速化していたので、原因を調べてみるとhhvmのログサイズが肥大化していた。

ちなみに、linuxでどのフォルダが肥大化しているかを調べるには以下のコマンドが便利

容量を使っているディレクトリ上から30個表示
du / | sort -nr | head -30

調べてみたところ、hhvmのエラーログが肥大化していた。

/var/log/hhvmd/error.log

これがサーバ全体を圧迫するほど巨大化して容量を占有していた

該当ディレクトリまで移動し、このコマンドでとりあえず空にする

: > error.log

hhvmのログファイルのローテーションだが、以下のファイルで編集できる

/etc/logrotate.d/hhvmd

編集すると、初期設定では以下のようになっていた

/var/log/hhvmd/*log {
daily
rotate 52
missingok
notifempty
compress
delaycompress
sharedscripts
copytruncate
}

デイリーでログをローテーションし、52世代まで残す設定となっていた。
ファイルの上限がなかったので、ファイルサイズを追記しておいた。

/var/log/hhvmd/*log {
daily
rotate 52
size 5M
missingok
notifempty
compress
delaycompress
sharedscripts
copytruncate
}

上記の設定では5Mを超えるとローテーションされるので、最大でも 5M×52で250M程度しか容量を圧迫することはない。

設定後、Apacheの再起動を行って反映させた。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です