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

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

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

問題を作成する

他のデータタイプからメトリクスを作成

New Relic のメトリクス API サービスを使用して、イベント、ログ、スパンなどの他の種類のデータからメトリクスを作成するためのルールを定義します。 推奨事項: 開始する前に、 ルール作成の要件とヒントを確認してください。

メトリクス・ルールの作成

イベント、ログ、またはスパンからメトリクスを作成するルールを作成するには、以下の手順に従います。

  1. NRQLを使ってメトリクス・ルールを構築する.
  2. NRQLルールを含むNerdGraph(GraphQLフォーマット)のAPIリクエスト を構築します。
  3. APIリクエストを行ってメトリックを作成する.

メトリクスが作成されると、NRQL を使用して クエリやチャートを作成することができます。

ステップ 1.NRQLクエリアルールの作成 [#create-nrql]

メトリクス ルールを作成する上で最も重要な部分は、イベント、ログ、またはスパンからデータのメトリクスを定義するNRQLクエリを構築することです。 次の手順に従って、1 つのNRQLクエリで最大 10 個のメトリックを作成できます。

  1. New Relic の NRQL インターフェイスを使用して 、作成したいメトリックのクエリを構築します。例えば、以下のようになります。

    FROM ProcessSample SELECT average(ioTotalReadBytes)
    WHERE nr.entityType = 'HOST'

重要

イベント対メトリクスルールは、 NRQL クエリWITH ... AS句をサポートしません。

  1. 使用可能な3つのメトリックタイプのうちの1つを使用するようにクエリを編集します。

    • summary: クエリの関数がminmaxsumcount 、またはaverageの場合に使用します。

    • uniqueCount: クエリの関数がuniqueCountの場合に使用します。

    • distribution: クエリの関数がpercentileまたはhistogramの場合に使用します。

      この例のクエリではaverageを使用しているため、 summaryを使用します。

      FROM ProcessSample SELECT summary(ioTotalReadBytes)
      WHERE nr.entityType = 'HOST'

      このクエリの例では、非数値フィールドでcountを使用しています:

      FROM ProcessSample SELECT count(hostname)
      WHERE hostname LIKE '%prod%'

      非数値フィールドのsummaryにはsummary(1)を使用します。

      FROM ProcessSample SELECT summary(1)
      WHERE hostname LIKE '%prod%'

      ヒント

      これらのメトリックタイプをルールで使用するための詳細な情報は、 Creating metric rules: requirements and tips を参照してください。

  2. Limited on unique metric-name/attribute-value combinations に従って、メトリックに添付する属性を決定します。

    推奨事項: 別のクエリを実行して、30 秒間の最大カーディナリティが 50,000 を超えないようにします。 たとえば、次のクエリは、 awsRegionawsAvailabilityZone 、およびcommandName属性を含めた場合、 ProcessSampleイベントの過去 3 時間の 30 秒間に発生した最大カーディナリティを検索します。

    FROM (FROM ProcessSample
    SELECT rate(uniqueCount(awsRegion, awsAvailabilityZone, commandName), 30 seconds) AS 'cardinalityRate'
    WHERE nr.entityType = 'HOST' TIMESERIES 30 seconds) SELECT max(cardinalityRate) AS 'maxCardinalityRate' SINCE 3 hours AGO
  3. メトリックを集計およびフィルタリングできるようにするには、 FACET句を使用して、メトリックに関連付ける属性を追加します。例えば:

    FROM ProcessSample
    SELECT summary(ioTotalReadBytes) WHERE nr.entityType = 'HOST'
    FACET awsRegion, awsAvailabilityZone, commandName
  4. AS関数を使用して指標の名前を設定します。例えば:

    FROM ProcessSample SELECT summary(ioTotalReadBytes) AS 'io.totalread.bytes'
    WHERE nr.entityType = 'HOST' FACET awsRegion, awsAvailabilityZone, commandName

NRQL ルールが完成したら、それを使って API リクエストを作成します

ステップ2.APIリクエストの作成

イベント、ログ、またはスパンからのデータをメトリクスに変換するNRQLルールを構築した後、APIリクエストの構築を続けます。 NerdGraph APIツール を使用して、データ構造を調べたり、リクエストを作成したりすることができます。

ルールが正しく作成されたことを確認するには、 クエリを実行して、そのIDを使ってそのルールを返すことができます 。作成したメトリクスのクエリに関するヒントは、 Query and chart your metrics を参照してください。

Step 3.APIリクエストによるメトリクス・ルールの作成

APIリクエストの準備ができたら、 NerdGraph API を使ってリクエストを行うと、メトリクスが作成されます。

指標の照会とグラフ化

メトリクス ルールを作成してイベント、ログ、またはスパンのデータを変換すると、New Relic UI で新しいメトリクス データを表示することができます。データを表示するには

  1. New Relic の NRQL クエリインターフェイス に移動します。

  2. 次のクエリを実行すると、すべてのメトリクスの名前が表示されます。

    SELECT uniques(metricName) FROM Metric
  3. 興味のあるメトリックを選び、次のクエリを実行して利用可能な属性を確認します。

    SELECT * FROM Metric WHERE metricName = 'yourMetric'
  4. 期待通りのデータが表示されない場合は、 トラブルシューティング の手順に従ってください。

利用可能な NRQL アグリゲータ関数 は、作成した メトリックタイプ によって異なります。以下に例を示します。

トラブルシューティング

NerdGraphの呼び出しが正しく構築されていない場合、以下のようなメッセージが表示されることがあります。

Cannot parse the unexpected character "\u201C”

NerdGraphコール内の引用符がスマートクォート(カーリークォート)でないことを確認してください。NerdGraph APIはストレートな引用符しか受け付けません。

Copyright © 2024 New Relic株式会社。

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