Versions Compared

    Key

    • This line was added.
    • This line was removed.
    • Formatting was changed.
    Comment: Published by Scroll Versions from this space and version 20.4
    Sv translation
    languageen
    Appd tocbox

    Related pages:

    AppDynamics can monitor the performance of database calls made by instrumented applications, as described here.  

    Measuring Database Performance

    AppDynamics collects metrics for database calls and response times at the following levels:

    • Business transaction metrics: The metrics for a specific business transaction for a specific database are visible on the transaction flow map.
    • Tier metrics: The metrics for all calls from a tier to the specified database are visible on the tier flow map.
    • Database call metrics: The overall database access metrics across the application (all business transactions) are visible on the application flow map and the Database Calls dashboard.
    • Integrated database metrics with Database Visibility:
      • When a database Collector has been set up in AppDynamics Database Visibility, you can link to that product from the Application and Database Calls dashboards. If you have already associated the database server with a Database Collector in Database Visibility, you can view the Database Visibility UI. If not, the disconnected database icon is displayed and you are prompted to link the database to an already configured server or cluster in Database Visibility.  Also, you must have view permission to the corresponding collector configured in Database Visibility, to map/unmap it with the database server or cluster.

      • a relational database backend of a Java application has the same hostname, port number, and database type as a database server already configured in a database Collector, the Oracle backend is automatically matched with the corresponding Database Visibility Collector. The Snapshot correlation view, which is available for relational database backends, shows the details of queries, clients, sessions, and schemas when the snapshot was captured.

      • When a backend database is linked to a server or a cluster in Database Visibility, a click on the database icon displays basic details with a link to Database Visibility UI. You can also view the database KPI metrics.

    By default, many databases and data stores are automatically detected when calls are made from nodes instrumented with AppDynamics app agents.

    To monitor call performance to a database, confirm that it appears in the Databases Calls list and has its own Database Calls dashboard. If a database is not appearing, check the configuration. 

    The database icons on the flow maps help you identify the status of the database. The following table lists the different database icons:

    Anchor
    Database Icons
    Database Icons

    Database IconStatus

    The database is healthy. No active health rule violations

    Health Rule Violation - Critical Condition

    Health Rule Violation - Warning Condition

    The database is either not linked to the appropriate server or cluster node. This icon also appears when the database is in the process of changing the state.

    The database is not connected to the server or cluster in Database Visibility.

    Click the database icon, then the Connect link to link the database backend to the appropriate server or cluster.

     

    View Database Performance on Flow Maps

    Databases detected during the specified time window show up on the Application Dashboard flow map, where you can view them in the context of the entire application's transaction flow. The application flow map displays calls per minute and average response time for calls made to databases. These metrics include all calls made from a specific tier to a database across all business transactions. The tier and node flow maps display a similar metric aggregating data from calls across all business transactions by tier or node respectively.

    The detected databases appear on the Tier Flow Map, where you can view them in the context of the traffic on this specific tier. 

    For business transactions involving calls to databases, the databases appear on the Transaction Flow Map, where you can view them in the context of the traffic for this specific business transaction. The transaction flow map shows the average time spent in database calls for the business transaction. 

    Drill Down on Database Performance

    In addition to seeing monitored databases in the flow map, you can view the following information:

    • Business transactions that make the most database calls. To see this, navigate to Database Business Transactions Window.
    • Queries executed the most number of times by business transactions. To see this, double click on the business transaction and open the DB Queries tab.

    Resolving Unexpected Databases on the Flow Map

    AppDynamics can sometimes reveal unexpected connections from an application to a database on the flow map. If this occurs for you, try the following to determine why this database appears:

    • From the left navigation menu, select Tiers & Nodes > Databases. Select the Slowest Database Calls tab and drill down into the snapshots to see the code that is calling the database. See To troubleshoot slow database and remote service calls.
    • Run a diagnostic session to capture some transaction snapshots and look for calls to the database. See Diagnostic Sessions and Transaction Snapshots. If you have integrated AppDynamics for Databases, you can select a transaction snapshot that involves running SQL on an Oracle database and from the Transaction Flow Map you can link to AppDynamics for Database to see all queries executed in the SQL session that are associated with that transaction snapshot. See Use AppDynamics Pro with AppDynamics for Databases.
    • Are any exceptions thrown when the database is seen? If so, look for error snapshots that point to the exception trace. 

    View Discovered Databases

    The database list shows all detected databases along with key performance indicators. Stale databases can be configured to be automatically removed. 


    From the database list, you can select a database and click View to see the Database Calls dashboard. The dashboard displays a Database Flow Map, database properties, and graphs of the key performance indicators (KPIs). The database properties indicate how the agent identifies the database and control how it shows in the display map and how the metrics are aggregated. For a discussion of baselines and how they are used and configured, see Dynamic Baselines.

    The database dashboard has two tabs and an action options menu:

    • Dashboard: Displays the flow map showing traffic from the calling tier to the database, the backend properties used for auto-detection and naming, and key performance indicators.
    • Slowest Database Calls: Lists up to ten calls to the database with the longest execution time, by tier and for all tiers. See Slow Database Calls.
    • The Action menu provides additional actions:

      • Rename Backend: Renames the database.
      • Resolve Backend to Tier: Associates the database with the tier that you select so that the backend appears in the grid view of the tier and not as an independent component ("unresolved backend") on the application dashboard flow map. You can reverse this operation from the Configure Backends resolving to this Tier item in Actions menu in the Tier dashboard.
      • Delete Backends: Removes instances of the database from the controller and all agents. An agent can re-discover the database and register it with the controller.

    You can access the Database Server List by clicking Servers > Databases

    Slow Database Calls

    AppDynamics displays a list of the slowest database calls. For each call, you can view specific call details and related business transaction snapshots. The list shows up to ten database calls with the longest execution time over the selected time frame, by tier and for all tiers. Each call shows the following information:

    • Call: SQL Query
    • Avg. Time per Call (ms): the average time per call in milliseconds
    • Number of Calls: the number of calls executed during the time range
    • Max Time (ms):  the maximum execution time in milliseconds
    • View snapshots: a link to view existing transaction snapshots

    App agents aggregate and report call data to the Controller every 15 minutes. Max Time determines which calls are displayed in the Slowest Database Calls list. For example for JDBC calls, Max Time must exceed 10 ms before AppDynamics tracks the call as a potential candidate for this list. 

    Slowest database calls are defines as:

    • Max Time greater than 10 ms
    • Top ten slowest
    • Reported every 15 minutes

    Viewing slowest database calls

    To see slowest database calls, click Troubleshoot > Slow Response Times > Slowest DB and Remote Service Calls

    On this page, you can do the following:

    • If transaction snapshots are available for a call, you can click the View Snapshots link in the Snapshots column to select a snapshot and drill down to the root cause of the slowness. 
    • You can view explain plans by selecting a call and clicking View Details. In the dialog box, click Explain Plans. If parameter values are filtered out from the captured SQL, the Explain Plan feature is disabled.
    Tip
    titleNoSQL

    AppDynamics displays NoSQL databases as Remote Services. See Remote Services.

    Sv translation
    languageja
    Appd tocbox

    On this page:

    Table of Contents
    maxLevel2
    minLevel2

    Related pages:

    AppDynamicsは、ここで説明されているように、インストゥルメント化されたアプリケーションによって行われたデータベース呼び出しのパフォーマンスをモニタリングできます。  

    トランザクションパフォーマンスの測定

    AppDynamicsは、以下のレベルでデータベース呼び出しと応答時間に関するメトリックを収集します。

    • ビジネストランザクションメトリック:特定のデータベースにおける特定のビジネストランザクションのメトリックをトランザクションフローマップに表示。
    • ティアメトリック:ティアから指定されるデータベースへの全コールのメトリックをティアフローマップに表示。
    • データベースコールメトリック:アプリケーション全体のデータベースアクセスメトリック(すべてのビジネストランザクション)をアプリケーションフローマップとデータベースコールダッシュボードに表示。
    • データベース可視性による統合データメトリック:
      • データベースコレクタが AppDynamics データベース可視性で設定されている場合、アプリケーションおよびデータベース コール ダッシュボードからその製品にリンクできます。Database Visibility ですでにデータベースコレクタにデータベースサーバを関連付けている場合は、データベース可視性 UI が開きます。そうでない場合、データベース可視性をすでに構成しているコレクタにデータベースサーバをリンクするよう求められます。また、データベースサーバにマッピング/マッピング解除するために、ユーザはデータベース可視性で構成された対応コレクタに対して編集権限を持っている必要があります。

      • Javaアプリケーションのリレーショナル データベースバックエンドが、データベースコレクタで既に構成されているデータベースサーバーと同じホスト名、ポート番号、およびデータベース種類を持つ場合、Oracleバックエンドは対応するデータベース可視性コレクタと自動的に照合されます。リレーショナル データベースバックエンドのみで使用可能なスナップショット相関ビューには、スナップショットが取得されたときのクエリ、クライアント、セッション、およびスキーマの詳細が表示されます。

     

      • AppDynamics Pro がデータベース用 AppDynamics と統合されている場合、データベースリストからデータベースを右クリックするか、フローマップのデータベースアイコンからその製品にリンクすることができます。詳細については、「AppDynamics for Databases」を参照してください。

          

    デフォルトでは、AppDynamicsアプリエージェントをインストゥルメント化されたノードから呼び出しを行うと、多くのデータベースおよびデータストアが自動的に検出されます。

    データベースへのコールのパフォーマンスを監視するには、コールがデータベースコールリストに表示されていて、独自のデータベース コール ダッシュボードが存在することを確認します。データベースが表示しない場合は、構成を確認してください。 

    フローマップでデータベースパフォーマンスを表示

    指定した時間範囲に検出されたデータベースは、アプリケーションダッシュボード フローマップに表示され、アプリケーションのトランザクションフロー全体のコンテキストで表示することができます。アプリケーションフローマップは、データベースへのコールに対する1分あたりのコール数と平均応答時間を表示します。これらのメトリックには、すべてのビジネストランザクションにおける特定のティアからデータベースへの全コールが含まれます。ティアおよびノードのフローマップは、ティアまたはノードごとにすべてのビジネストランザクションにおけるコールからのデータを集約する同様のメトリックをそれぞれ表示します。

    検出されたデータベースは、ティアフローマップに表示され、このティア特定のトラフィックのコンテキストで確認することができます。 

    データベースへのコールを含むビジネストランザクションの場合、データベースはトランザクション フロー マップに表示され、このビジネストランザクション特定のトラフィックコンテキストでデータベースを表示できます。トランザクション フロー マップには、ビジネストランザクションのデータベースコールに使用した平均時間が表示されます。 

    データベースパフォーマンスのドリルダウン

    フローマップにモニタリング対象のデータベースを表示するだけでなく、次の情報も確認することができます。

    • 最も多くデータベースコールを送信するビジネストランザクション。Database Business Transactions ウィンドウで確認できます。
    • ビジネストランザクションにより最も多く実行さたクエリ。ビジネストランザクションをダブルクリックして DB Queries タブを開いて確認します。

    フローマップ上で予期しないデータベースの解決

    AppDynamicsでは、アプリケーションからデータベースへの予期しない接続がフローマップ上に表示されることがあります。これが発生した場合は、次の方法でデータベースが表示される理由を調査します。

    • 左のナビゲーションメニューから  Tiers & Nodes > Databases を選択します。Slowest Database Calls タブを選択し、スナップショットをドリルダウンしてデータベースを呼び出すコードを表示します。「遅延データベースとリモートサービスコールのトラブルシューティング」をご参照ください。
    • 診断セッションを実行してトランザクションスナップショットを取得し、データベースへのコールを確認します。「Diagnostic Sessions」および「Transaction Snapshots」を参照してください。データベース用AppDynamicsを統合している場合は、Oracleデータベース上でSQLを実行するトランザクションスナップショットを選択し、データベース用AppDynamicsにリンク可能なトランザクションフローマップから、該当するトランザクションスナップショットに関連するSQLセッションで実行されたすべてのクエリを参照することが可能です。「Use AppDynamics Pro with AppDynamics for Databases」を参照してください。
    • データベースを表示するときに例外が発生している場合は、例外トレースを示すエラースナップショットを確認します。その場合は、例外トレースを示すエラースナップショットを確認します。 

    検出したデータベースの表示

    データベースリストには、検出されたすべてのデータベースと KPI が表示されます。無効なデータベースは自動的に削除されるように構成できます。 

    データベースリストから、データベースを選択して [View] をクリックすると、データベース コール ダッシュボードが表示されます。ダッシュボードには、データベースフローマップ、データベースプロパティ、およびキー パフォーマンス インジケータ(KPI)のグラフが表示されます。データベースプロパティは、エージェントがデータベースを識別し、表示マップに表示する方法およびメトリックの集計方法を管理します。ベースラインの説明と使用方法については、「Dynamic Baselines」を参照してください。

    データベース ダッシュボードには、2 つのタブとアクション オプション メニューがあります。

    • Dashboard:呼び出しを行うティアからデータベースへのトラフィック、自動検出と命名に使用されるバックエンドプロパティ、およびKPIを示すフローマップを表示。
    • Slowest Database Calls:実行時間が最も長いデータベースへのコールを、ティア別およびすべてのティアで最大 10 件まで一覧表示。Slow Database Calls」参照。
    • Action メニューでは、次のアクションが可能です。

      • Rename Backend:データベース名を変更。
      • Resolve Backend to Tier:選択したティアにデータベースを関連付け、バックエンドをティアのグリッドビューに表示して、アプリケーション ダッシュボード フロー マップ上で独立したコンポーネント(未転換のバックエンド)として表示されないようにします。この操作は、ティアダッシュボードのアクションメニューにある項目 [Configure Backends resolving to this Tier] で元に戻すことができます。
      • Delete Backends:コントローラとすべてのエージェントからデータベースのインスタンスを削除。エージェントは、データベースを再検出してコントローラに登録可能。

    Servers > Databases をクリックすると、データベースサーバリストにアクセスできます。

    遅延データベースコール

    AppDynamicsでは、最も遅いデータベースコールのリストを表示します。コールごとに、特定のコールの詳細および関連するビジネストランザクションのスナップショットを表示できます。リストには、選択した時間範囲において実行時間が最も長いデータベースコールが最大10件まで、すべてのティアおよびティアごとに表示されます。各コールには、以下の情報が表示されます。

    • Call:SQL クエリ
    • Avg. Time per Call (ms):1 回のコールあたりの平均時間をミリ秒で表示
    • Number of Calls:時間範囲内に実行されたコール数
    • Max Time (ms):最長実行時間をミリ秒で表示
    • View snapshots:既存のトランザクション スナップショットを表示するリンク

    アプリケーション エージェントは、15 分ごとにコールデータを集約してコントローラに報告します。[ Max Time ] により、[Slowest Database Calls] リストに表示されるコールが決定します。たとえば JDBC コールの場合、AppDynamics がこのリストの潜在的な候補としてコールを追跡するには、[Max Time] が 10 ミリ秒を超えている必要があります。 

    最も遅いデータベースコールは、次のように定義されています。

    • 最長時間が10ミリ秒以上であること
    • 最も遅い上位10以内であること
    • 15分ごとに報告すること

    最も遅いデータベースコールの表示

    最も遅いデータベースコールを表示するには、[Troubleshoot > Slow Response Times > Slowest DB and Remote Service Calls] をクリックします。 

    このページでは、以下を行うことができます。

    • コールのトランザクション スナップショットが利用できる場合は、[Snapshots] 列の [View Snapshots] リンクをクリックし、スナップショットを選択して遅延の原因までドリルダウンします。 
    • 説明プランを表示するには、コールを選択して [View Details] をクリックします。ダイアログボックスで [Explain Plans] をクリックします。取得した SQL からパラメータ値を除外すると、説明プラン機能は無効になります。
    Tip
    titleNoSQL

    AppDynamicsは、NoSQLデータベースをリモートサービスとして表示します。「Remote Services」を参照してください。