さくらのレンタルサーバーでPHPのメモリ使用量を把握する方法(phptop)
photo credit: William Hook via photopin cc
レンタルサーバーでメモリの使用量を把握するのは難しいのですが
phptopを使えば簡単にわかったので、設定方法を記述します
今回サーバーはさくらインターネットを例に書きますが、他のレンタルサーバーでも利用できると思います
設定後のイメージです
error_logに実行時間と使用したメモリ量がでています。
robots.txtへのアクセスで58M
wp-cron.phpが58Mです
設定方法
PhpTopの公式からファイルを取ってきます
http://forge.bearstech.com/trac/wiki/PhpTop
最新バージョンが0.5.3なので
http://forge.bearstech.com/trac/raw-attachment/wiki/PhpTop/phptop-0.5.3.tar.gz
アーカイブの中にある「phptop_hook.php」を取り出して、サーバーにアップします
php.iniに
auto_prepend_file=/home/username/phptop_hook.php
を追記します(各自でアップロードした場所とあわせてください)
さくらインターネットでは管理画面より
メニューの「PHP設定の編集」で変更します
(usernameは適宜自分のidに変更してください)
保存するで反映されます
これで設定は完了です
ログの表示方法
メニューの「アクセスログの設定」
エラーログの表示をクリックしてください
別ウィンドウで表示されます
メモリ使用量を把握したら
php.iniのauto_prepend_fileの一番最初に「;」を付けて無効化して設定を変更しておくとよいでしょう
phptop
error_logに出力したデータを集計するphptopというツールがあるのですが、さくらのレンタルサーバーではいろいろと面倒だったので使いませんでした
(cpanmとLocal::LibでTerm::Sizeいれてphptopにuse lib qq{/home/username/perl5/lib/perl5};を記述して)
./phptop-0.5.3/phptop -t 15 -s mem(VPSとかrootのある環境なら簡単に設定できます)
Error: no log files found/processed. Tried: /var/log/apache2/error*log, /var/log/apache2/*/error*log