トランザクション
トランザクションとは?
ユーザーがブラウザーからのリクエストを処理するためのサーバーサイドのLUW(Logical Unit of Work)です。個々のウェブサービス(URL) のリクエストに対する処理過程がトランザクションです。ウェブアプリケーションでは、トランザクションは、ウェブサービス(URL)に対して、HTTP Requestを受信し、Responseを返すプロセスです。
アプリケーションの性能は、これらのトランザクションの性能であると言えます。トランザクションの性能には、トランザクションの開始から終了までの時間、レスポンス時間およびリソースの使用量、トランザクション呼び出し元の属性などの情報が含まれます。
基本的には、トランザクションのレスポンス分布とトランザクション統計を使用してトランザクションの性能を分析できます。
トランザクション名
トランザクションの名前はURLです。 ただし、Getパラメータ(Query String)は除外されます。
ブラウザーリクエスト
http://www.whatap.io/hr/apply.do?name='kim'
トランザクション名
/hr/apply.do
WhaTapでは、ウェブサービス名とトランザクション名を組み合わせて使用します。特定のURLとそのリクエストを処理するためのサービスモジュールとして表示します。トランザクションリクエストの1つの処理を参照するために、両方の名前を同じ方法でURLと呼ぶことができます。
トランザクション名の正規化
MSAベースのシステム開発に伴い、URL + ? の引数パラメータ形式よりもURLパスにパラメータを入れる方式をよく使います。
http://www.whatap.io/hr/kim/apply.do
このようにパスパラメータをそのままトランザクション名として使用すると、統計的な観点から性能分析が困難になるため、これを正規化する必要があります。WhaTapは、正規化のためのオプションと機能を提供します。
trace_normalize_urls=/hr/{name}/apply.do
上記のように設定した場合、トランザクション名は、/hr/kim/apply.do → _/hello/:name/apply.do_に置き換えられ収集されます。対象URLの設定はそのままにして、この機能をoffにする場合は、次のオプションを指定することができます。 既定値はtrue
です。
trace_normalize_enabled=false