CodeIgniter-アプリケーションプロファイリング

Webアプリケーションを構築するとき、コントローラーの実行にかかった時間と使用されたメモリの量という点で、Webサイトのパフォーマンスに非常に関心があります。パフォーマンスだけでなく、POSTデータ、データベースクエリのデータ、セッションデータなどのデータの洞察を確認して、アプリケーションの開発中にデバッグを行う必要があります。CodeIgniterは、アプリケーションをプロファイリングすることで、この作業を容易にしました。

プロファイリングを有効にする

アプリケーションのプロファイリングを有効にするには、コントローラーのいずれかのメソッドで以下のコマンドを実行するだけです。

$this->output->enable_profiler(TRUE);

プロファイリングのレポートは、有効にするとページの下部に表示されます。

プロファイリングを無効にする

アプリケーションのプロファイリングを無効にするには、コントローラーのいずれかの方法で以下のコマンドを実行するだけです。

$this->output->enable_profiler(FALSE);

プロファイラーセクションの有効化/無効化

プロファイリングはセクションごとに実行できます。ブール値TRUEまたはFALSEを設定することにより、セクションのプロファイリングを有効または無効にできます。アプリケーションにプロファイリングを設定したい場合は、にあるファイルで行うことができますapplication/config/profiler.php

たとえば、次のコマンドは、アプリケーション全体のプロファイリングクエリを有効にします。

$config['queries'] = TRUE;

次の表で、キーはパラメーターです。このパラメーターは、特定のプロファイルを有効または無効にするために構成配列に設定できます。

キー 説明 デフォルト

benchmarks

ベンチマークポイントの経過時間と合計実行時間 TRUE

config

CodeIgniterConfig変数 TRUE

controller_info

要求されたControllerクラスとメソッド TRUE

get

リクエストで渡されたGETデータ TRUE

http_headers

現在のリクエストのHTTPヘッダー TRUE

memory_usage

現在のリクエストで消費されたメモリの量(バイト単位) TRUE

post

リクエストで渡されたPOSTデータ TRUE

queries

実行時間を含む、実行されたすべてのデータベースクエリのリスト TRUE

uri_string

現在のリクエストのURI TRUE

session_data

現在のセッションに保存されているデータ TRUE

query_toggle_count

クエリブロックがデフォルトで非表示になるまでのクエリの数。 25

のファイルに設定されているプロファイラー application/config/profiler.php を使用してオーバーライドできます set_profiler_sections() 以下に示すように、コントローラーで機能します。

$sections = array( 
   'config'  => TRUE, 
   'queries' => TRUE 
); 
 
$this->output->set_profiler_sections($sections);