メトリクスタイプのデータ を、 イベント、ログ、スパン など、New Relic の他のタイプのデータから生成することができます。メトリクスはお客様のデータを集約したもので、長期的なトレンドの分析・監視に最適です。
このドキュメントは、以下について説明します。
なぜ他のデータタイプからメトリクスを作成するのか? メトリクスを使用することで、より効率的にデータを保存することができます。これにより、データの照会やチャートの作成がより簡単にできるようになります。New Relic におけるメトリクスと他の種類のデータの違いは、時間に基づいています。詳しくは、 Understand data types をご覧ください。
イベント、ログ、スパン: これらのタイプのデータは、ある特定の瞬間の1つの記録を表しています。例えば、システムへのすべてのリクエストに対するイベントがあるかもしれません。このデータは、詳細なトラブルシューティングや分析に最適です。メトリクス: これらは、イベント、ログ、またはスパンを集約したビューを提供します。メトリクスは、より長い時間の範囲で傾向を示すのに適しています。たとえば、サービスごとの総リクエスト数を1つのメトリクスに集約し、その情報を月ごとに調べることができます。なぜメトリクスを使うのか?
コメントコメント
柔軟性
メトリクスは 次元 。どのようなメタデータ(ホスト名やアプリ名など)を添付するかを選択できます。 平均値、合計値、最小値、最大値などの一般的な測定値はすでに計算されています。 データの集約と保持
データは、より長い期間のバケットにあらかじめ集約されています。 データの保存期間は13ヶ月です。 問い合わせ機能
イベント データからメトリクス データを生成する方法を示すビデオは次のとおりです (7 分 47 分)。
まず、データをメトリクスに変換するために、 ルールを作成します。
可能な操作 イベント、ログ、スパンからメトリクスを生成するためのルールを表示、作成、削除するには、GraphQL形式のAPIであるNerdGraphをご利用ください。操作を行う前に、 NerdGraph入門 をお読みいただき、 GraphiQL APIツール を使ってデータを調査することをお勧めします。
これらの操作は、2つの基本的な リクエストタイプに分類されます 。
Mutations 、既存のルールや設定に変更を加える操作です(例えば、新しいメトリクス・ルールの作成など)。クエリ 、既存のデータをフェッチするためのものです(例えば、既存のメトリクス・ルールをフェッチする)。すべての操作は、現在ログインしているNew RelicユーザーとしてNerdGraphでロールベースで行われます。
変異 イベントからメトリクスへ、ログからメトリクスへ、またはスパンからメトリクスへの変異操作は以下の通りです。
ルールの削除 重要 この操作はプロダクションの設定を変更するので、操作を実行する前に変更内容を十分に確認することをお勧めします。
ルールを削除するには、ルール ID と New Relic アカウント ID が必要です。
リクエスト例
eventsToMetricsDeleteRule(deletes: {ruleId: "12", accountId: 123456}) {
このリクエストで
要素
説明
mutation
APIの基本的な操作タイプの一つ 。
eventsToMetricsDeleteRule
ルールを削除するために呼び出されるメソッドです。
deletes
これは2つのパラメータを取ります。
successes
とsubmitted
ブロック
ここでは、成功または失敗したときに返されるデータを定義します。これらのブロックで利用可能なパラメータ
id
(または submitted
の場合は ruleId
)name
description
nrql
enabled
accountId
リクエストに対するレスポンスの例。
"eventsToMetricsDeleteRule": {
"nrql": "select summary(duration) as 'server.responseTime' from Transaction where appName = 'Data Points Staging' facet name, appName, host"
ルールの有効化・無効化 重要 この操作はプロダクションの設定を変更するので、操作を実行する前に変更内容を十分に確認することをお勧めします。
イベントからメトリクスへ、ログからメトリクスへ、またはスパンからメトリクスへの既存のルールを有効または無効にするには、同じ eventsToMetricsUpdateRule
操作を使用します。唯一の違いは、 enabled
true
に設定されるか false
に設定されるかです。
既存のメトリクス・ルールを有効にするリクエスト例。
eventsToMetricsUpdateRule(updates: {ruleId: "12", accountId: 123456, enabled: true}) {
このリクエストで
要素
説明
mutation
APIの基本的な操作タイプの一つ 。
eventsToMetricsUpdateRule
既存のルールを更新し、それを有効または無効にするために呼び出されるメソッドです。
updates
これには3つの必須パラメータが必要です。
ruleId
: イベントからメトリクスへ、ログからメトリクスへ、またはスパンからメトリクスへのルールの ID。accountId
: New Relic アカウント ID 。enabled
: 無効なルールを有効にするには、これを true
に設定します。ルールを無効にするには、これを false
に設定します。successes
とsubmitted
ブロック
ここでは、成功または失敗したときに返されるデータを定義します。これらのブロックで利用可能なパラメータ
id
(または submitted
の場合は ruleId
)name
description
nrql
enabled
accountId
クエリ クエリの操作は以下の通りです。
New Relic アカウントのすべてのルールをリストアップ New Relic アカウントのすべてのルールをリストアップしたり、 特定のルールを返すことができます 。
アカウント 123456
のすべてのルールをリストする例:
このリクエストで
要素
説明
query
API の基本的な操作タイプの一つ 。問い合わせに使用されますが、変更はできません。
actor
現在のNew Relicユーザーを指定します。
account(id: 123456)
データを取得する New Relic アカウント の ID を指定します。
eventsToMetrics
event-to-metrics、logs-to-metrics、spans-to-metricsのルールでのみデータをスコープします。
allRules
そのアカウントのすべてのルールを返します。
rules
rules
ブロックでは、返されるデータを定義できます。使用可能なフィールドは次のとおりです。
id
name
description
nrql
accountId
enabled
回答例
"description": "Metric for total time",
"nrql": "select summary(totalTime) as 'server.totalTime' from Transaction where appName = 'Data Points Staging' facet name, appName, host"
"description": "Metric for duration",
"nrql": "select summary(duration) as 'server.responseTime' from Transaction where appName = 'Data Points Staging' facet name, appName, host"
ルールIDによるルールの一覧表示 ルールの正確なIDを知っていれば、特定のルールを照会することができます。たとえば、ルールを作成したばかりで、その内容を一覧表示して確認したい場合などです。
New Relic アカウント 123456
のリスト ルール 36
の例:
rulesById(ruleIds: "36") {
このクエリの要素の詳細については、 すべてのルールをリストアップ を参照してください。
回答例
"description": "Metric for total time",
"nrql": "select summary(totalTime) as 'server.totalTime' from Transaction where appName = 'Data Points Staging' facet name, appName, host"
NerdGraph API エクスプローラー、GraphiQL ツールを使用して、データ構造を探索できます。これを使用して、イベント、ログ、およびスパンをメトリクスに変換する 操作 を構築および実行することもできます。このツールを使用するには:
必要なパラメータを指定して、メトリクス・オペレーションのリクエストを作成します。 one.newrelic.com > All capabilities > Apps > NerdGraph API explorer に移動し、ボックスにクエリを貼り付けます。操作を実行するには、赤い Execute query [クエリの実行] ボタンをクリックします。または、curl 形式を取得するには、 Tools > Copy as CURL を選択します。 レスポンスボックスで回答を検証します。 オプションです。ルール作成操作が正常に実行されたことを確認するために、 そのルールID のリストクエリを実行します。