APM は、メトリクス データをメトリック タイムスライス データの形式でレポートします。NRQLを使用して、このタイプのデータのクエリとアラートを実行できます。 時間区切りデータを調べるには、 「メトリクスを調べる」を参照してください。
メートル法のタイムスライスデータを照会する理由は?
New Relic はいくつかの方法でメトリクスを報告します。 metric timeslice data と呼ばれるメトリクス データの一種。これは、APM、、 browserで多くのチャートを生成するために使用されるデータのタイプです (詳細については、 「メトリック タイムスライス データ」を参照してください)。
メトリクスは、メトリックタイムスライスデータからより詳細な次元のメトリクスデータに自動的に変換され、NRQL およびNerdGraph APIを介してクエリできるようになります。 この機能を使用すると、これらの重要な APM メトリクスの強力で詳細なカスタム視覚化を作成できます。 これには、カスタムメトリックをクエリできることも含まれます。
重要
タイムスライスメトリックをディメンションメトリックまたはイベントデータと組み合わせてクエリすることはできません。 newrelic.timeslice.value
またはapm.*
メトリックを含むクエリは、APMメトリックのみを返すことができます。
問い合わせ先は?
クエリビルダーを使用して、APMメトリックタイムスライスデータをクエリすることをお勧めします。このエクスペリエンスは、完全なNRQL機能を提供し、クエリエラーに関する役立つオートコンプリートの提案とフィードバックも提供します。
もできます。
クエリの作成方法
APM では、一部のチャートには、 そのチャートを生成した NRQL クエリを表示するオプションがあります。 これは、メトリクスをクエリする方法を理解するための良い出発点となります。 以下の NRQL クエリは、 概要ページのエラー率グラフからわずかに変更されています。
FROM Metric SELECT count(apm.service.error.count) / count(apm.service.transaction.duration) WHERE (entity.guid = 'AN_ENTITY_GUID') AND (transactionType = 'Web') SINCE 1 day ago TIMESERIES
ここでは、このクエリの各部分がどのように機能するかを説明します。
問い合わせセグメント | 何をするのか? |
---|---|
|
|
| この計算は、トランザクション・メトリクスの合計数からエラーの数を生成します。このクエリは、 変換されたメトリック名 を使用しています。 なお、他の アグリゲータの機能 を使うこともできます。 |
| 少なくとも1つのデータソースを指定する必要があります。ここに示すように、単一のエンティティのGUIDを選択することも、複数のソースを選択することもできます。このクエリは |
| トランザクションタイプをウェブに設定し、バックグラウンド/非ウェブのトランザクションがカウントされないようにします。 |
| 時間範囲の選択 |
| このオプション句では、結果を時間軸のチャートで表示します。 |
FROM
、 FACET
、およびTIMESERIES
を含むNRQL構文の一般的な情報については、 NRQLの概要を参照してください。
その他のクエリについては、 クエリの例 を参照してください。
メートル法のタイムスライスデータの変換方法
元のタイムスライス メトリクスをクエリに使用できるディメンション メトリクスに変換する作業は進行中のプロセスであり、完了していません。 このセクションに探しているメトリクスが見つからない場合は、 「汎用クエリ」を参照してください。
元のAPM タイムスライス メトリクスがどのように次元メトリクスに変換されるかを次に示します。
メトリック・タイムスライス構造 | 次元メトリック構造 |
---|---|
APMのメトリック名は、スラッシュで区切られたセグメントの1つの文字列として表されます。 たとえば、「 |
このメトリックには、メトリック名にエンコードされたデータ値を表す3つの属性、datastoreType、table、operationがあります。
|
APMメトリクスの一部は、ディメンションメトリクスとして利用可能です。
メトリクス名 | 説明 | 属性 | メートル単位 |
---|---|---|---|
| ユーザーモードのコードでの滞在時間 | percentage | percentage |
| テーブル操作別のデータベースコールの応答時間 |
| 秒 |
| サマリーエラーカウントメトリクス |
| count |
| 外部からの問い合わせに対する応答時間(外部ホスト名別 |
| 秒 |
| エージェントのインスタンス数のカウント | count | |
| プロセスメモリ(MB | メガバイト | |
| トランザクションごとのApdexスコア |
| apdex |
| トランザクションごとの応答時間 |
| 秒 |
| トランザクションごとのエラー数 |
| count |
| トランザクションタイプ別の外部通話応答時間 |
| 秒 |
利用可能なすべての指標を表示する方法を学びます。特定のメトリック名のメトリック単位を取得するには、次のようなクエリを使用できます。
FROM Metric SELECT unit WHERE appName = 'YOUR_APP_NAME' AND metricName = 'METRIC_NAME'
メトリック・タイムスライス・データの一般的な構造について、一般的な例を含めて詳しく理解するには、 Metric timeslice data を参照してください。
属性
これらの属性は、上記のメトリクスの表にリストされているメトリクス固有の属性に加えて使用できます。
名前 | 説明 |
---|---|
| アプリケーションの名前です。 |
| アプリケーションのIDです。 |
| アプリケーションのGUIDです。 |
| 監視対象のプロセスのホストです。 |
| ホストのブートのIDがあれば、それを入力します。 |
| エージェントに設定されている場合は、ホストの |
| Java エージェントの場合、 |
| 次元メトリックの名前です。 |
| レガシーメトリックのタイムスライス名です。 |
| (オプション)このメトリックが「スコープ」されるレガシーメトリックのタイムスライス名。スコープを持つメトリックはそれに属します-それらの測定値は、 |
概要指標
概要メトリックを使用すると、実行中に費やされた場所の内訳を取得できます。これらの指標はいくつかの点でユニークです。
- それらは多くのタイムスライスの組み合わせです。
- これらは、
average
アグリゲーター関数のみで動作するように設計されています。 - 同時に実行されたコードは、合計実行時間を示します。
たとえば、サービスが 3 つの同時スレッドで MySQL データベースを呼び出し、各スレッドの平均応答時間が 0.1 秒の場合、MySQL セグメントは 0.3 と表示されます。
さまざまな目的のために、いくつかの概要メトリックが提供されています。
メトリクス名 | 説明 | 属性 |
---|---|---|
| Web トランザクションのサービスのさまざまな部分で費やされた時間の内訳 |
|
| バックグラウンド/非 Web トランザクションのサービスのさまざまな部分で費やされた時間の内訳 |
|
| 特定のトランザクションに費やされた時間の内訳 |
|
| 特定のキー トランザクションに費やされた時間の内訳 |
|
一般的なクエリ newrelic.timeslice.value
ディメンションメトリックに変換されていないメトリックの場合、または独自のカスタムメトリックの場合、 newrelic.timeslice.value
という名前のディメンションメトリックがあります。
重要
可能な場合は、 上記の表の ディメンション メトリックを使用することをお勧めします。
用途 newrelic.timeslice.value
メトリックのタイムスライス名を指定すると、それが変換された次元メトリックに相当するものかどうかを、この構文で問い合わせることができます。
FROM MetricSELECT uniques(metricName)WHERE metricTimesliceName = 'Datastore/statement/MySQL/test/select'
返されるメトリック名がnewrelic.timeslice.value
のみの場合は、この一般的なアプローチを使用してデータをクエリする必要があります。
利用可能なメトリクスの取得
あるアプリケーションで利用可能なメトリクスのリストを取得するには、次のようなクエリを使用します。
SELECT uniques(metricTimesliceName) FROM Metric WHERE appName='YOUR_APP_NAME' AND newrelic.timeslice.value IS NOT NULL
ワイルドカードで指定されたメトリック名セグメントのファセット
一部のメトリクス タイムスライス名には、メトリクス名のセグメントとして属性値が含まれています。 たとえば、 エージェントは、次の形式を使用して外部通話の継続時間を追跡することによってメトリクスをレポートします。
External/{externalHost}/all
ここで、 {externalHost}
はアウトバウンドネットワークコールのホスト名を表します。
ワイルドカードメトリックセグメントにファセットするカスタムメトリックの一般的なnewrelic.timeslice.value
クエリの例を次に示します。
FROM Metric SELECT count(newrelic.timeslice.value) WHERE appName = 'MY APP' WITH METRIC_FORMAT 'Custom/Labels/{action}' TIMESERIES FACET action
このクエリでは、 {action}
は一時属性action
を作成し、それがFACET action
によって使用されます。クエリ中に存在するのは属性のみであるため、任意の名前を使用できます。既存の属性名と競合しない名前を選択する必要があります。
推奨するアグリゲーター機能
推奨されるNRQL アグリゲータ機能 があります。
apdex
average
sum
count
rate
uniques
クエリの例
メトリック・タイムスライス・データのクエリの例をいくつか紹介します。