APMでは、トランザクショントレースを収集するときに追加のSlow queryスロークエリデータも検出され、それがDatabasesページに表示されることがあります。スロークエリデータとは何か、存在する場所、その設定方法を見てみましょう。
スロークエリデータのサンプリング
トランザクショントレースが報告されると、スロークエリ機能によってトレース内で最も遅いデータベースクエリがサンプリングされ、それらに関するデータがDatabasesページに報告されます。スロークエリデータの内容:
- クエリセグメントの期間
- クエリ/説明プラン(認識される場合)
- ホストおよびインスタンスレベルの詳細(エージェントでサポートされる場合)
スロークエリデータを表示する
スローSQLクエリに関するデータはAPMのUIで表示できます。
- one.newrelic.com > All capabilities > APM & Services - に移動します。 
- アプリを選択します。 
- Monitor - セクションで、 - Databases - をクリックします。 
- データベースのトランザクションを選択します。 
- 任意のスロークエリをクリックすると詳細が取得されます。  
想定していたスロークエリのデータが表示されない場合は、トラブルシューティングのヒントを参照してください。
設定
通常、スロークエリの設定は以下の方法で指定できます。
- エージェントの設定(以下を参照)
- サーバーサイドコンフィグレーション (エージェントで利用可能な場合)
エージェント設定には、サーバーサイドコンフィグレーションよりも多くのオプションが提供されています。スロークエリを構成する方法は、独自のセットアップと環境設定によって異なります。詳細については、エージェント固有のドキュメントを参照してください:
低速クエリのメトリックス
低速クエリのリストには、次のメトリックスが含まれています。
| Metric | Description | 
|---|---|
| 
 | サンプリングされたステートメントの平均応答時間(ミリ秒単位)。 | 
| 
 | サンプル内で特定された低速クエリの件数です。 | 
さらに詳細を表示するには、個別のスロークエリを選択します:
| Metric | Description | 
|---|---|
| 
 | スタックトレースが、表示されたデータの収集を開始した時刻です。 | 
| 
 | サンプル内のすべての類似クエリステートメントの実行に要する最大時間です。 | 
| 
 | クエリを呼び出すアクションまたはプロセスです。 | 
| 
 | 低速と報告されるクエリです。設定によっては、クエリの一部が難読化されることがあります。 | 
| 
 | コード内でステートメントが呼び出される位置です。 | 
MySQLの場合、当社はクエリ解析を提供します。これは、クエリで発生した内容を説明し、スピードアップするために必要なものが何か説明します。その他のデータベースでは、可能であれば説明プランを表示します。
トラブルシューティング:スロークエリデータなし
スロークエリデータが表示されない場合は、そのデータベースがスローSQL用にインストゥルメントされていない可能性があります。
また、設定に問題がある可能性もあります。
- 低速クエリ機能が無効になっている。
- 閾値の期間の設定が長すぎるためスロークエリのレポートがありません。
- クエリの難読化設定(通常record_sqlまたはそれに類似するもの)がOffに設定されています。
詳細については設定オプションを参照してください。