トランザクショントレーシング
トランザクショントレーシングとは?
トランザクション性能とは、トランザクションの開始と終了までの要約指標や属性を意味します。一方、トランザクショントレースは、トランザクションが実行されているステップのトレースです。 トランザクションが遅いかエラーがある場合は、その原因を追跡するために実行履歴をステップごとに追跡する必要があります。 これをトランザクショントレーシングと言います。
トランザクションのパフォーマンス追跡のために収集するステップの種類は次のとおりです。
-
DB接続ステップ START-END
RDBへの接続のパフォーマンスが含まれます。 ステップ情報には、名前、レスポンス時間、エラーが含まれます。
-
SQLステップ START-END
JDBC SQLのパフォーマンスが含まれます。 ステップ情報には、接続情報、SQL文、エラーが含まれています。
-
HTTP Callステップ START-END
外部HTTPサービス呼び出しのパフォーマンスが含まれます。 ステップ情報には、url、host、port、レスポンス時間、エラーが含まれます。
-
Messageステップ ADD
トレースを収集する過程で、非構造化のすべての間隔の履歴を収集する際にメッセージステップを使用します。
-
SOCKETステップ ADD
Socketオープンを表現するステップです。
-
METHODステップ START-END
メソッド応答時間を追跡します。
-
ACTIVE STACK ステップ START-END
アクティブスタックに関する情報を含みます。 別のスレッドが作成し、トレースに追加する方法で収集します。
WhaTapモニタリングサービスでは、ステップ(Step)はスパン(Span)と同じ意味で使用されます。
詳細分析
ホーム画面 > プロジェクト選択 > 分析 > ヒットマップ
-
時間選択で、ヒットマップを照会する期間を選択します。
-
タイプ、アプリケーションから照会する対象を選択します。
-
ボタンを選択してください。
-
ヒットマップTXから照会する領域をのようにドラッグします。
-
TXトレースに一覧が表示されたら、分析するトランザクションを選択します。
トランザクションのパフォーマンス分析のためのクライアント情報などの属性、トランザクションの処理性能、各区間別の詳細な実行履歴などを確認できるトランザクション情報画面が表示されます。
トランザクション情報画面の案内
-
領域では、ステップ情報をさまざまな形式で確認できます。 希望する形式のタブを選択します。
-
領域では、トランザクションに関する基本情報を確認できます。
-
:該当URLまたは各実行区間の統計データ画面が表示されます。 統計データ画面のグラフチャートで、希望する時間をクリックすると統計またはTX検索メニューに移動します。 選択した時間に基づいて統計データを照会することができます。
-
SQLステップを選択すると、SQL変数とHTTPクエリを照会することができます。 詳細については、次の文書を参照してください。
テーブルビュー
テーブルビュータブでは、トランザクションの実行過程を時間順に確認できます。
- トランザクションを実行区間別に分類し、ダイアグラムで確認できます。 全経過時間のうち、各区間別に所要された時間、最も長くかかった区間を素早く把握できます。
-
ダイアグラムの各区間を選択すると、そのステップが位置するテーブルの一覧に移動します。
-
カラム選択:テーブル一覧にカラムでメモリ累積情報およびCPU累積情報を追加または非表示できます。 カラム情報は次のとおりです。
-
No:ステップの実行順序
-
時間:各ステップの開始時刻
-
時間差:直前ステップの開始時刻から現在のステップに移るまでの待ち時間、外部要因により遅延される場合、経過時間と異なる場合があります。
-
経過:各メソッドの開始から終了までの所要時間
-
内容:該当ステップの詳細な実行内容
-
-
TXT:トランザクションの基本情報および区間ごとの実行情報をTXTファイルでダウンロードできます。
-
SQL:トランザクションの基本情報およびSQL実行情報をTXTファイルでダウンロードできます。
-
置換値を含むダウンロード: バインド変数値を元の値に置き換え、SQL統計データをダウンロードします。 セキュリティキー(
paramkey
)が設定されている場合は、セキュリティキー入力画面が表示されます。 セキュリティキーを入力しないとダウンロードできません。 セキュリティキーに関するエージェント設定の詳細については、次の文書を参照します。 -
置換値を含まないダウンロード: バインド変数値を置き換えない状態でSQL統計データをダウンロードします。
-
-
:トランザクションの要約情報とダイアグラムを非表示にし、テーブル一覧のみを確認できます。 ボタンをクリックすると、隠された情報を再表示します。 テーブル一覧が長い場合は、この機能を利用すると便利です。
-
SQLステップを選択すると、パラメータを照会できるSQL画面が表示されます。 詳細については、次の文書を参照してください。
レコード要約
トランザクションの基本情報を確認するには、レコード要約タブを選択します。 トランザクションの基本情報およびそのトランザクションが実行されたエージェント関連情報、メモリ割り当て使用量、クライアント関連情報を確認できます。
トランザクション属性
分類 | プロパティ | 説明 |
---|---|---|
トランザクション | TX | アプリケーションで実行されたAPIまたはURL呼び出し、そのトランザクションのパスです。 正規表現式を使用して一定の形式に変換します。 |
原本URL | 実際に呼び出されたURLパスです。 変数を含まない具体的なリクエストパスです。 元のURLがある場合は元のURL表示、元のURLがない場合は表示しません。 | |
プロジェクトコード | WhaTapモニタリングサービスに登録したプロジェクトの識別コードです。 | |
ステータス | そのトランザクションのHTTP応答ステータスのコードです。 | |
エラーレベル | そのトランザクションで発生したエラー レベルです。 WarningまたはCriticalと表示されます。 | |
エラークラス | そのトランザクションで発生したエラー関連クラスです。 | |
エラーメッセージ | そのトランザクションで発生したエラーメッセージです。 | |
経過時間 | トランザクションの実行時間です。 | |
開始時間 | トランザクションの開始時刻です。 | |
終了時間 | トランザクションの終了時刻です。 | |
ユーザーエージェント | クライアント関連情報の抽出に利用するブラウザ情報です。 | |
リファラー | クライアントがブラウザで以前に利用したページアドレスまたは流入パスです。 | |
TXID | 該当トランザクションの固有識別子(ID)です。 | |
マルチTXID | マルチトランザクションの固有識別子(ID)です。 他のアプリケーションのトランザクションと並列に実行された場合に表示されます。 | |
エージェント | エージェント名(oname) | エージェント名です。 |
エージェントID(oid) | エージェントの固有識別子(ID)です。 | |
エージェントグループ名 | okind オプションで設定されたエージェントグループ名です。 | |
エージェントグループID | エージェントグループの固有識別子(ID)です。 | |
エージェントサーバー名 | ondoe オプションで設定したエージェントサーバー名です。 | |
エージェントサーバーID | エージェント サーバーの固有識別子(ID)です。 | |
ステップ(Step) | HTTPメソッド | HTTPメソッドです。 (GET、POST、PUT、HEADなど) |
HTTPコール時間 | 外部Http Call時間です。 | |
HTTPコール件数 | 外部HTTP Call件数です。 | |
DBコネクション時間 | データベースに接続するまでにかかる時間です。 | |
SQL時間 | SQLの実行時間です。 | |
SQL件数 | SQLの実行件数です。 | |
SQLパッチ時間 | レコードの照会にかかった時間です。 ネストが発生するか、他のロジックが含まれる場合があります。 | |
SQLフェッチ数 | SQLでデータを照会したレコードの件数です。 | |
リソース(Resource) | CPU使用時間 | トランザクションの処理に使用されたCPU時間です。 |
メモリ割当量 | そのトランザクションで使用されたメモリ量です。 | |
コンテナ | Pod名 | 該当トランザクションを処理したKubernetes Podの名前です。 |
コンテナID | Pod内で実行されている特定のコンテナの固有識別子です。 | |
クライアント | クライアントIPアドレス | クライアントのIPアドレスです。 |
OS | ブラウザが実行されるOS環境です。 | |
ドメイン | クライアントが接続したIPアドレスに指定されたインターネットアドレスです。 | |
国/地域 | クライアントの国の情報です。 | |
都市 | クライアントの国内の都市情報です。 | |
クライアントタイプ | クライアントが利用したブラウザの種類です。 | |
クライアント名 | クライアントが利用したデバイス名です。 | |
WClientID | クライアントの固有識別子です。 | |
Method | methodCount | トランザクションで呼び出されたメソッドの数です。 |
methodTime | メソッドの実行にかかった時間です。 |
-
アプリケーションの種類や設定、ステップの種類によって収集する情報は異なる場合があります。 コンテナ項目は、アプリケーションがコンテナ環境で実行されている場合にのみ表示されます。
-
エラー関連項目は、そのトランザクションでエラーが発生した場合に表示されます。
-
トランザクション属性の一部は、統計機能を提供します。 ボタンを選択すると、時系列チャートを通じて照会時間中に発生したトランザクション状況を把握できる画面が表示されます。 チャート内の棒グラフを選択すると、分析 > TX検索メニューに移動して詳細照会できます。
-
WhaTapは、クライアントに関する情報をデフォルトで保存します。 ユーザーデータの収集に関するエージェント設定の詳細については、次の文書を参照してください。
ツリービュー
トランザクションの実行過程をツリー形式で確認するには、ツリービュータブを選択します。 各トランザクションとそれに属するトレースの詳細、トレースの開始時刻と所要時間、呼び出し関係を確認できます。 ダイアグラムの各区間を選択すると、そのステップが位置するツリービューに移動します。
-
一行:各区間別の実行情報に表示されたテキストを一行で表示し、ツリー形式をシンプルに整理できます。
-
複数行:各区間別の実行情報に表示されたテキストを改行してすべて表示します。
-
最長経路:最長の経路で移動できます。
-
タイムバーの表示:経過時間を棒チャートで表示します。
-
時間を表示する:各区間ごとのタイムスタンプ、ギャップ、経過時間をテキスト形式で表示します。
-
8秒以上:超過遅延状態で赤色で表現します。
-
3秒以上8秒未満:遅延状態でオレンジで表現します。
-
3秒未満:正常な状態で青色で表示します。
-
-
時間を表示しない:時間情報を非表示にします。
-
:トランザクションの要約情報とダイアグラムを非表示にし、ツリービューのみを確認できます。 ボタンをクリックすると、隠された情報を再表示します。 ツリービュー一覧が長い場合は、この機能を利用すると便利です。
-
:SQL変数とHTTPクエリを照会できる画面が表示されます。 詳細については、次の文書を参照してください。
開始および所要時間の場合、トランザクション呼び出し環境によって生じる時差を上位トランザクションのトレースやマッピングで修正および表示することで、実際に収集された時間データとの差異が生じる可能性があります。
マルチトランザクション
マルチトランザクションとは、他のエージェントやプロジェクトに関連付けられたトランザクションを意味します。 マルチTXタブでは、WhaTapモニタリングサービスに登録したアプリケーション間の呼び出し関係を確認できます。
マルチトランザクションを追跡するには、管理 > エージェント設定メニューでmtrace_enabled
オプションをtrue
に設定します。 エージェント設定の詳細については、次の文書を参照してください。
-
チャート:各トランザクションの呼び出し関係をフローチャート形式で提供します。 トランザクションノードを選択すると、そのトランザクションノードのトレース分析情報を確認できます。 チャートモードではマウスを利用して位置を移動したり、スクロールして拡大または縮小できます。
- チャートビュー設定:チャートに表示するアイテムを表示または非表示します。
-
表:テーブル形式で、マルチトランザクション内の各トランザクションごとの情報を確認できます。 カラム選択アイコンを選択して、テーブルヘッダーカラムを編集できます。 各トランザクション項目を選択すると、トレース分析情報を確認できます。
-
ツリー:ツリー形式でトランザクション間の呼び出し関係を把握できます。 関連した付加機能は、ツリービュータブの機能と同じです。
-
プロジェクト選択:チャートに表示されるプロジェクトを選択または解除できます。
-
トランザクション一覧からアイコンがある項目で確認できます。
-
マルチトランザクションの詳細については、次の文書を参照してください。
メソッド要約
メソッド情報のみを確認するには、メソッド要約タブを選択しますて。 エージェントに追跡が設定されたメソッド名と所要時間を表示します。 不要なロジックが繰り返し実行される場合、低い件数に比べて実行時間が長くかかる場合を把握し、メソッドロジック改善のための分析情報として活用できます。
メソッド(method)と関連するエージェント設定オプションの詳細については、次の文書を参照してください。 ご利用中の製品によって、メソッド追跡サポートの可否は異なる場合があります。
SQL要約
SQL文についての情報を確認するには、SQL要約タブを選択します。 不要に繰り返し実行される場合、低い件数に比べて実行時間が長くかかる場合を把握し、クエリ性能改善のための分析情報として活用できます。
HTTPコール要約
HTTP呼び出しのリクエスト件数、合計時間、平均時間などを確認するには、HTTPコール要約タブを選択します。 不要な外部への呼び出しが繰り返して実行される場合や、低い件数だが比較的に実行時間が長くかかる場合などを把握するなど、トランザクションの遅延要因が外部か内部かを分析する情報として活用できます。
TXログ
トランザクションに関するログ情報を確認するには、TXログタブを選択します。
-
キーワード検索:検索バーに検索するテキストを入力し、エンターキーを入力するか、ボタンを選択します。 入力したテキストと一致するキーワードをハイライトで表示します。
-
キーワードハイライト:キーワードと色を設定すると、自動的にログ一覧でキーワードと一致するテキストをハイライトします。
-
テーブル設定:ログ一覧テーブルのヘッダーカラムを設定できます。
キーワードハイライトの設定
-
ハイライトで表示するキーワードを追加するにはボタンを選択します。
-
ご希望のキーワードを入力します。
-
色アイコンを選択し、ご希望の色を選択します。
-
エンターを入力します。
追加したキーワードが一覧に作成されます。
キーワードハイライト削除
ハイライト一覧から利用しない項目を削除するには、ボタンを選択します。
付加機能
連携プロジェクトメトリクスの確認
データベースモニタリング(DPM) プロジェクトとアプリケーションのモニタリング(APM) プロジェクトを生成した場合、2つのプロジェクトを連携してDPMで収集したモニタリングデータをAPMプロジェクトで確認できます。 ヒットマップTXセクションの右上にある連携プロジェクト機能で、トランザクションの照会中に連携したプロジェクトの性能メトリクスを一緒に確認できます。
連携プロジェクト機能は、APMプロジェクトでトランザクションを分析する際に、遅いSQLがある場合、類似な複数のDBを使用する環境から、正確に問題が発生したDBを把握しにくい状況に役立ちます。
-
トランザクションを照会する時間とアプリケーションを設定した後ボタンを選択します。
-
ヒットマップTXセクションで右上にある連携プロジェクトボタンを選択します。
-
連携プロジェクトのメトリクスを確認できる新しい画面が表示されます。
左の一覧で連携プロジェクトを選択し、インスタンスダッシュボードセクションのメトリクスを確認します。
選択したプロジェクトのダッシュボードメニューに移動するには、インスタンスを選択し、右上のインスタンスの移動ボタンをクリックします。 ダッシューボード > インスタンスモニタリングメニューに移動します。
-
ヒットマップTXセクションの連携プロジェクトボタンは、連携されたプロジェクトがある場合にのみ表示されます。 連携プロジェクトの追加についての詳細は、次の文書を参照してください。
-
左の連携プロジェクト一覧の上にある追加ボタンを選択するとプロジェクトを追加できます。
-
インスタンスの移動ボタンは、全体を選択した状態では無効になります。
-
データベース商品の種類によって分析 > カウント推移メニューに移動できます。
HTTPパラメータ照会
テーブルビュー タブでそのトランザクションのHTTPパラメータを照会することができます。
-
ページの下にスクロールして、トランザクションの実行の最後のステップに移動してください。
-
HTTPパラメータ項目を選択してください。
-
HTTP-PARAMETERS画面が表示されると、パスワード ボタンを選択します。
-
設定したParam Keyを入力してください。
隠されたパラメータを確認できます。
-
HTTPパラメータに関するエージェント設定は、次の文書を参考にしてください。
-
パスワード:復号化されたパラメータの値を確認できます。 パスワードは、
WHATAP_HOME
/security.confファイル内の6桁の文字列(paramkey
)です。 別の文字列に変更できます。 SQL変数の照会、HTTPクエリの照会、Threadの中止に必要です。 -
エージェントのバージョンによっては、パスワード設定ファイルが異なる場合があります。 security.confファイルまたはparamkey.txtファイル内の文字列を変更します。
SQLパラメータの照会
テーブルビュータブでSQLステップを選択するか、ツリービュータブでボタンを選択します。 パラメータを照会できるSQL画面が表示されます。
-
パスワード:復号化されたパラメータの値を確認できます。 パスワードは*
WHATAP_HOME
/security.conf*ファイル内の6桁の文字列(paramkey
)です。 別の文字列に変更できます。ノートエージェントのバージョンによっては、パスワード設定ファイルが異なる場合があります。 security.confファイルまたはparamkey.txtファイル内の文字列を変更します。
-
SQLフォーマット:SQL文をインデントまたはフォーマット化して可読性を高めることができます。
-
:SQL文章をクリップボードにコピーできます。
-
統計: 統計 > SQLメニューに移動します。
SQL変数とHTTPクエリを照会するには、次のオプションをエージェント設定に追加してください。
# SQLパラメータ照会オプション: オプションが適用されるとSQLパラメータを暗号化して収集します。
whatap.profile_sql_param_enabled=true
# HTTPパラメータ照会オプション: オプションが適用されると、HTTPクエリパラメータを暗号化して収集します。
whatap.profile_http_parameter_enabled=true
トレース一覧カラムを設定する
TXトレースセクションのカラム設定により、照会された結果の詳細項目を追加で確認できます。 カラム選択ボタンを選択します。
カラムの項目を選択または解除します。 設定した内容がテーブルにすぐ反映されます。 設定をすべて完了したら、右上にあるボタンを選択します。
-
すべて選択: すべてのカラム項目を選択します。
-
すべて解除: すべてのカラム項目を解除します。
-
初期化(既定値): カラム項目をデフォルトに設定します。
トレース一覧をフィルタリングする
TXトレースセクションで照会された結果を次のオプションでフィルタリングできます。
-
すべて表示: 照会された結果からすべてのトランザクションが確認できます。
-
アクティブスタック: 照会された結果から、アクティブスタックがあるトランザクションのみを確認できます。
-
マルチTX: 照会された結果から、マルチトランザクションのトランザクションのみを確認できます。
-
Search URL: トランザクションURLと一致する文字列を検索できます。 文字列を入力した後、キーボードの
Enter
キーを押します。
照会一覧をダウンロードする
TXトレースセクションで照会された結果をCSV形式のファイルにダウンロードできます。
-
トランザクションを照会した後にボタンを選択します。
-
最大CSV行数オプションに希望する値を入力します。
-
ダウンロードボタンを選択してください。
ダウンロードしたCSVファイルの名前は、profile{project_code}
YYYYMMDD
.csv形式です。