問題発見に便利な機能
Zend Serverには、PHPスクリプトの実行状況を監視するために便利な機能が搭載されています。比較的ベーシックな機能を提供するログ表示を解説した後、問題発生時の原因調査やチューニングに役立つモニタおよびコードトレーシング機能を解説します。
ログ表示
Zend Serverのログファイルは、Linux版の場合、/usr/local/zend/var/logディレクトリにあります。OverviewのLogsタブを使用すると、これらのログファイルをWebブラウザで確認したり、ダウンロードできます。左側の一覧からログファイルを選択します。
PHPのエラーログや、Apacheのログも選択できます。表示を絞り込むには、AdministrationのSettingsタブのLog Verbosityを使用します。
モニタとイベント
関数の実行に時間がかかる場合やメモリの大量消費などを調査するには、PHPのエラーログではなくモニタが便利です。設定したルールにそって発生したイベントをOverviewのEventsタブで確認できます。
ルールはApplicationsのMonitoring Rulesタブで設定できます。各ルールをクリックすると設定が表示されます。設定変更後、右上のSaveボタンを押し、再起動アイコンをクリックする必要があります。変更しない場合はCloseボタンを押します。
各ルールは、Notice、Warning、Criticalの3段階で設定できます。例えば、メモリ消費量が4、8、16MBを超えた際にそれぞれイベントを発生させる場合、3段階ともチェックし、Memory Usageに1024倍した値を設定します。
関数が対象のイベントを発生させる場合は、対象の関数を複数指定できます。AddFunctionボタンで関数を追加します。削除は、各関数名の左の×印で行います。
コードトレーシング
イベントの発生時点だけではなく、実行中のメモリ消費量の変化や各関数の実行時間を調査するには、コードトレーシングが便利です。例えばパフォーマンスのボトルネック調査に役立ちます。この機能はOverviewのCode Tracingタブで使用できます。調査するPHPスクリプトのURLを入力し、右横のTraceボタンを押します。
結果を表示するには、IDのリンクをクリックします。デフォルトのTrace Treeタブは関数の実行順で表示されます。Statistics per Functionタブは関数ごとの一覧が表示され、項目名をクリックするとソートできます。それぞれShow memory usageをチェックするとメモリ使用状況も表示されます。
むすび
Zend Serverのインストールから問題発見に便利な機能まで駆け足でご紹介しました。
PHP実行環境の準備から運用監視まで、無償の範囲でも多くの機能が使用できます。開発や運用のお役に立てば幸いです。






