連携プロジェクト管理
ホーム画面 > プロジェクト選択 > 管理 > 連携プロジェクト管理
データベースモニタリング(DPM) プロジェクトとアプリケーションのモニタリング(APM) プロジェクトを生成した場合、2つのプロジェクトを連携してDPMで収集したモニタリングデータをAPMプロジェクトで確認できます。
データベースで有効になったセッション(アクティブセッション)と連動したアプリケーションのアクティブTXにより、そのトランザクションの詳細情報をリアルタイムで確認できます。 このような統合モニタリングにより、アプリケーションとデータベース間の相互作用を深層分析し、リアルタイムで性能ボトルネック現象を診断して解決できます。

連携プロジェクト管理機能を使用すると、製品または機器中心のモニタリングを超えて、複数のプロジェクト間のモニタリングデータを統合して確認できます。 これは、アプリケーション、データベースなど、 様々なシステムコンポーネントがどのように相互作用するかを分析するのに役立ちます。 特に、性能低下が発生した時に装備の問題なのか個別アプリケーションの問題なのか迅速に把握でき、問題解決時間を大幅に短縮できます。 連携プロジェクト管理これにより、ユーザーシステム単位で性能データを総合的に分析し、より可視的なインサイトを確保できます。
詳細については、次の動画を通じて確認できます。
開始前の参考事項
-
現在はJavaプラットフォームのみサポートします。 今後のアップデートでサポートプラットフォームを拡張します。
-
連携DBセッション機能の場合、Javaエージェント2.2.33バージョン以降が必要です。
-
アプリケーションプロジェクトでデータベースプロジェクトを連携する方法についての詳細は、次の文書を参照してください。
事前準備
連携分析を使用するには、データベース権限、APMエージェントオプション、プロジェクト連携を順に準備します。プロジェクトを連 携しても前の2つが抜けていると、アクティブセッションに連携アイコンが表示されません。
データベース権限
アプリケーションがDB接続に使用するアカウントにv$sessionの照会権限を付与します。WhaTapのモニタリングアカウントではなく、アプリケーションアカウントです。
grant select on sys.v_$session to {Application_service_account};
APMエージェントオプション
APMプロジェクトのwhatap.confファイルに次のオプションを設定します。管理 > エージェント設定メニューでも設定できます。
dbc_sid_enabled=true
hook_db_native_enabled=true
| Option | Default | Setting | Required | Description |
|---|---|---|---|---|
dbc_sid_enabled | false | true | 必須 | 連携分析のキーとなるSIDを発行 |
hook_db_native_enabled | false | true | 必須 | トランザクションが使用するDBの種類を抽出 |
debug_dbc_sid_enabled | false | true | 任意 | JavaエージェントのログにSID情報を記録。連携されないときの原因確認用 |
2つのオプションをすべて設定してから、アプリケーションを再起動します。再起動が必要なのはhook_db_native_enabledです。dbc_sid_enabledは再起動なしで適用されます。
要件
| Item | Condition |
|---|---|
| APMエージェント | Javaエージェント2.2.33以上。現在Javaプラットフォームのみサポート |
| 連携プロジェクト対応DB | PostgreSQL、Oracle、MySQL、SQL Server、CUBRID、Altibase、Redis、MongoDB |
| 連携DBセッション対応DB | PostgreSQL、Oracle、Oracle Pro、MySQL |
| コンソール権限 | プロジェクトの修正権限 |
| 照会条件 | リアルタイム照会状態 |
連携アイコンが表示されないとき
プロジェクトを連携したにもかかわらずアクティブセッションに連携アイコンが表示されない場合は、次の項目を確認してください。
- アプリケーションアカウントに
v$sessionの照会権限があるか確認します。
-
dbc_sid_enabledとhook_db_native_enabledがすべてtrueであり、値を変更した後にアプリケーションを再起動したか確認します。 -
連携したAPMプロジェクトのJavaエージェントが2.2.33以上か確認します。
-
使用中のデータベースが連携DBセッション対応リストにあるか確認します。
-
リアルタイム照会状態か確認します。過去の時点を照会すると、連携アイコンは表示されません。
-
アクティブセッション収集フィルターオプションでセッションが除外されていないか確認します。
limit_active_sessionで収集数が制限されたり、skip_userやskip_sys_sessionでアカウントが除外されたりすると、連携アイコンは表示されません。 -
debug_dbc_sid_enabled=trueに設定してから、JavaエージェントのログでSIDが発行されるか確認します。
連携プロジェクトを追加する
-
管理 > 連携プロジェクト管理メニューに移動します。
-
連携プロジェクトの登録セ クションでプロジェクト選択入力欄を選択します。

-
選択できるプロジェクトの一覧が表示されたら、連携するプロジェクトを選択します。 文字列を入力して、一致するプロジェクトを検索もできます。
-
プロジェクトを1つ以上選択した後に有効になった追加ボタンを選択します。
連携プロジェクトのリストに選択したプロジェクトが追加されます。
連携プロジェクトを追加するためには、プロジェクト修正権限が必要です。 修正権限がある場合連携プロジェクト管理メニューで追加ボタンが有効になります。
連携プロジェクトを確認する
アクティブセッションと連動したアプリケーションのアクティブTX情報をリアルタイムで確認できます。 トランザクションURL、データベース接続情報、DBタイプ、HTTPメソッド、実行時間などの基本情報と、トランザクションID、スレッドID、クライアントIP、CPU使用時間などのメトリクスを一緒に確認します。 SQLクエリの実行時間、呼び出されたSQLの数、DB接続時間も確認できます。
コールスタック(Call stack)情報とSQLクエリを一緒に提供します。 問題が起きたときに原因を詳しく追跡し、アプリケーションとデータベースの間で性能のボトルネックがどこにあるかを素早く診断できます。
アクティブTXを追跡する
ダッシュボード > インスタンスモニタリングメニューに移動します。 連携分析機能は、リアルタイム照会状態でのみ確認できます。

-
インスタンスオプションで照会したいインスタンス(エージェント)を選択します。
-
アクティブセッションテーブル一覧で連携分析しようとするアクティブセッション項 目の
ボタンを選択します。
-
選択したアクティブセッションに関連するトランザクション情報を提供する連携分析画面が表示されます。
連携プロジェクト一覧でご希望のプロジェクトを選択し、連携分析情報を確認します。
-
画面右上のプロジェクト移動ボタンを選択すると、当該プロジェクトのアプリケーションメニューに移動できます。
-
選択したアクティブセッションに連携されたトランザクションがない場合、データなしとして画面に表示されます。
連携分析画面案内
連携分析画面では、アクティブTXに関する詳細情報およびCall Stack、SQL文を確認できます。
Active Transaction
連携したアクティブTXの詳細を確認できます。

-
DB Connection: データベース接続URLです。
-
Thread ID: そのトランザクションを処理するために使用されたスレッドの固有識別子です。
-
Sid: 選択したアクティブセッションのIDです。
-
Thread Stat: スレッドの現在の状態です。
-
DB Type: 連携したデータベースプラットフォームの種類です。
-
Javaエージェント2.2.40以前のバージョンではThreadStat値が数値形式で表示されます。 文字形式で表示するには、連携したプロジェクトでJavaエージェント2.2.40バージョン以降をインストールします。
-
その他の項目についての詳細は、次の文書を参照してください。
Call Stack
メソッドや関数呼び出しの順序を追跡する情報を提供します。

SQL
連携されたアクティブTXによって実行されたSQLクエリです。

連携プロジェクトを削除する
-
管理 > 連携プロジェクト管理メニューに移動します。
-
連携プロジェクトのリストセクションで連携を解除しようとするプロジェクトを削除す るには、一覧の一番右にある
ボタンを選択します。
-
確認メッセージが表示されたら削除ボタンを選択します。
連携プロジェクトのリストセクションで削除したプロジェクトは除外されます。