• /
  • EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

Metric APIによるメトリクスの報告

Metric API を使用して、New Relic プラットフォームにカスタム メトリックを送信します。このドキュメントには、最初のカスタムメトリックを送信するためのクイックスタートと、メトリックデータをフォーマットして送信する方法についての詳細な情報が含まれています。

クイックスタート測定データの送信

指標タイプcountgauge 、およびsummaryをレポートします。メトリクスの詳細については、ドキュメントを参照してください。

メトリックデータは、HTTP POST リクエストで New Relic に送信されます。各リクエストは1つ以上のメトリックデータで構成され、メトリック名、タイムスタンプ、値で構成されます。

この例に従って、最初のメトリックデータポイントをNew Relicに送信します。

  1. データをレポートするアカウントのを取得します。

  2. ライセンスキーを以下のJSONに挿入し、そのJSONを当社の エンドポイント に送信します。

  3. timestampを有効なエポック タイムスタンプで更新してください。この例では、 memory.heapという名前のメトリックに対して 1 つのメトリック データ ポイントを作成しますが、メトリック タイプを指定するか、オプションのcommonブロックを追加することで、追加の属性またはデータ ポイントを作成できます。

    bash
    $
    curl -vvv -k -H "Content-Type: application/json" \
    >
    -H "Api-Key: NEW_RELIC_LICENSE_KEY" \
    >
    -X POST https://metric-api.newrelic.com/metric/v1 \
    >
    --data '[{
    $
    "metrics":[{
    $
    "name":"memory.heap",
    $
    "type":"gauge",
    $
    "value":2.3,
    $
    "timestamp":CURRENT_TIME,
    $
    "attributes":{"host.name":"dev.server.com"}
    $
    }]
    $
    }]'

メトリックは数秒で New Relic で利用できるようになります。このクエリを使って、任意の NRQL インターフェース からデータを照会することができます。

FROM Metric SELECT max(memory.heap) TIMESERIES

データが表示される場所については、 Find Metric API data を参照してください。

エンドポイントURL

メトリックAPIのエンドポイントにメトリックデータを送信する場合は、HTTP POSTを使用します。

https://metric-api.newrelic.com/metric/v1

ヒント

組織が EU データセンターでデータをホストしている場合は、 EU 地域のエンドポイントを使用していることを確認してください。この API の EU エンドポイントは次のとおりです。

https://metric-api.eu.newrelic.com/metric/v1

HTTPリクエストヘッダ

POSTリクエストには、以下のHTTPリクエストヘッダを含めてください。一部のパラメーターは、リクエストヘッダーではなく、クエリパラメーターとして送信できます。

ヘッダー

クエリのパラメータとして送信しますか?

詳細

Content-Type

いいえ

Required. application/jsonである必要があります。

Content-Length

いいえ

Required (usually set automatically by the HTTP client)チャンクエンコーディングで送信されない限り、リクエスト本体の長さ(オクテット(8 ビットバイト)単位)。 このヘッダーは通常、データを送信する基盤となる HTTP クライアントによってデフォルトで設定され、ほとんどの場合、エンドユーザーによる追加の作業は必要ありません。

Api-Key

はい

Required. データをレポートするアカウントの 。 これがヘッダーとクエリ ヘッダーの両方として指定されている場合、値は一致する必要があります。

Content-Encoding

いいえ

Required if GZIP. 値はGZIPまたはIdentity.である必要があります。値が存在しない場合は、 Identityが想定されます。

x-request-id

いいえ

Optional - Reserved for future use. 値は有効なUUID4である必要があります。 値はリクエストごとに一意である必要があります。

HTTPリクエストボディ

HTTP POSTリクエストのボディは、JSON形式である必要があります。以下に、JSONペイロードの要件と推奨事項を記載します。

ペイロードはUTF-8としてエンコードする必要があります。

構造

JSONペイロードはこの構造体を使用しています。

  • JSONのペイロードは、マップの配列です。
  • 各マップにはmetricsキーが含まれている必要があります。その値は、1 つ以上の指標データ ポイントを含む配列です。
  • メトリック データ ポイントは、 namevalue 、およびtimestampとオプションの属性セットによって識別されます。

必要なキー・バリュー・ペア

metrics配列内の各指標データ ポイント マップは、次のキーと値の構造を使用します:

説明

name

ストリング

Requiredメトリクスの名前。 値は 255 文字未満である必要があります。

value

数字 or 地図

Required。値はメトリクスの種類によって異なります。 gaugeおよびcountの場合、値は単一の数値である必要があります。 summaryの場合、値は、カウント、合計、最小値、最大値を指定するキー値のペアを含むマップである必要があります。

timestamp

長さ

Required. メトリクスの開始時刻( Unix 時間) 。 デフォルトでは UTC タイムゾーンが使用されます。 このフィールドは、秒、マイクロ秒、ナノ秒もサポートします。 ただし、データは保存およびクエリのためにミリ秒に変換されます。 タイムスタンプが 48 時間以上前、または報告時から 24 時間以上経過したメトリクスは削除されます。

interval.ms

ポジティブロング

Required for count and summary metric types時間ウィンドウの長さ。

type

推奨。 これは、サポートされているメトリクス タイプの 1 つである必要があります。 タイプを指定しない場合は、デフォルトでgaugeになります。

attributes

文字列, JSON 数字, または ブーリアン

推奨。 この特定のメトリクスに関連付けられたキーの値ペアのマップ。 値は文字列、JSON 数値、またはブール値にすることができます。 キーは大文字と小文字が区別され、255 文字未満にする必要があります。

メトリック間で属性を共有する common

複数の指標に一連の属性を含めたい (各指標に同じ属性を追加したくない) 場合は、 commonブロックを使用できます。これは、関連するすべてのメトリック データ ポイントに適用される情報を指定するオプションのマップです。メトリック データ ポイントに同じキーが存在する場合、共通セクションの値は上書きされます。

ブロックを含むことができます。

属性

説明

timestamp

長さ

メトリックの開始時刻を Unix時間 で表したものです。デフォルトでは、UTCタイムゾーンの現在の時刻になります。このフィールドは、秒、マイクロ秒、およびナノ秒もサポートしています。ただし、データは保存や後のクエリのためにミリ秒に変換されます。

interval.ms

ポジティブロング

Required for count and summary.時間ウィンドウの長さ。

attributes

文字列、JSONの数値、またはブーリアン

この特定のメトリックに関連するキーと値のペアのマップ。値には、文字列、JSONの数値、またはブーリアンを使用できます。

レスポンスの検証とステータスコード

メトリクス API は、成功したリクエストに対して202レスポンス コードを返します。データが受け入れられると、HTTP 202応答コードが次のような応答構造で返されます:

HTTP/1.1 202 Accepted
Content-Type: application/json; charset=UTF-8
Content-Length: 52
Access-Control-Allow-Methods: GET, POST, PUT, HEAD, OPTIONS
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Connection: keep-alive
{"requestId":"f0e7bfff-001a-b000-0000-01682bcf4565"}

欠損データ 202

202コードは、API がデータを受信し、データが基本的な検証チェックに合格したことを示します。通常、データは数秒以内にクエリに使用できるようになります。ただし、New Relic はデータを受け取った後、非同期で追加の検証を実行します。202レスポンスを受信してもメトリクスが見つからない場合は、この非同期検証中に New Relic がエラーを検出したことを示しています。

これらのエラーは、使用した Insert API キーに関連付けられたアカウントでNrIntegrationErrorイベントをクエリすることで見つけることができます。各リクエストのrequestIdは、 NrIntegrationErrorイベントでタグ付けされます。詳しくはNRIntegrationErrorイベントのトラブルシューティングを参照してください。

ステータスコード

Metric APIは、以下のHTTPステータスコードを返すことができます。

ステータスコード

定義

202

データを受け付けました。

400

リクエストの構造が無効です。

403

認証に失敗しました。

404

リクエストパスが正しくありません。

405

POST以外のリクエストメソッドを使用しました。

408

リクエストがエンドポイントに到達するまでに時間がかかりすぎました。

411

Content-Lengthヘッダーが含まれていませんでした。

413

ペイロードが大きすぎました。ペイロードは1MB(10^6バイト)以下でなければなりません。

414

リクエストURIが長すぎました。

415

Content-TypeまたはContent-Encodingが無効でした。

429

リクエストレートのクォータを超えてしまいました。

431

リクエストヘッダーが長すぎます。

5xx

サーバーエラーが発生しました(再試行してください)。

Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.