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

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

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

問題を作成する

ゲートウェイルールでのNRQL関数のサポート

このドキュメントでは、Pipeline Control ゲートウェイ ルールでサポートされている NRQL 関数の概要を説明します。これらの関数を使用して、データのフィルタリングと管理のためのより強力で正確なルールを作成します。

働き

説明

NRQLクエリの例

aparse()

指定されたパターンに基づいて文字列から値を抽出します。

DELETE FROM Log WHERE aparse(message, 'Error: %') = 'timeout'

dimensions()

メトリクス/イベントに関連付けられたファセットまたはディメンションに基づいてデータをフィルターします。

DELETE FROM Log WHERE dimensions() LIKE '%collectd%'

floor()

指定された数値以下の最大の整数を返します。

DELETE FROM Metric WHERE floor(duration) > 5

getField()

複雑なデータ構造 (JSON オブジェクトなど) から特定のフィールドを抽出します。

DELETE FROM Metric WHERE getField(cpu_usage, percent) > 90

hourOf()

タイムスタンプから時間のコンポーネントを抽出します。

DELETE FROM Log WHERE hourOf(timestamp) IN (2, 3, 4)

mod()

除算演算の余りを返します。

DELETE FROM Log WHERE mod(timestamp/1000,20) != 1

numeric()

文字列値を数値型に変換します。

DELETE FROM Log WHERE numeric(responseTime) > 1000

round()

数値を最も近い整数または指定された小数点以下の桁数に丸めます。

DELETE FROM Metric WHERE round(latency, 2) > 0.5

string()

数値またはその他の値を文字列型に変換します。

DELETE FROM Log WHERE string(statusCode) = '404'

substring()

文字列の指定された部分を抽出します。

DELETE FROM Log WHERE substring(transactionId, 1, 3) = 'tmp'

weekdayOf()

タイムスタンプから曜日を抽出します (例: 「月曜日」、「日曜日」)。

DELETE FROM Metric WHERE weekdayOf(timestamp) IN ('Saturday', 'Sunday')

ゲートウェイルールにおける複数のNRQL関数の例

これらの例では、複数の関数を組み合わせて、より複雑なシナリオで使用し、正確なデータのフィルタリングと削除を実現する方法を示します。

  • このルールは、終了したコンテナのデータを削除しますが、過去 10 分以内に終了したコンテナのレコードは保持します。
DELETE FROM ContainerSample WHERE state = 'exited' AND status LIKE '%Exited%' AND NOT (status LIKE '%second%' AND numeric(aparse(status,'%Exited (%) * seconds ago%')) < 10) AND NOT (status LIKE '%About a minute ago%' OR status LIKE '%minute%' AND numeric(aparse(status,'%Exited (%) * minutes ago%')) < 10)
  • このルールは、特定のログパターン ( collectd ) に関連付けられており、カスタムイベント タイプではないログを削除します。
DELETE FROM Log, LogExtendedRecord WHERE dimensions() LIKE '%collectd%' AND newrelic.logs.customEventType IS NULL
  • このルールは、特定の種類のエラー ログを削除しますが、タイムスタンプが 101 の倍数であるレコードのみを保持してサンプリングします。
DELETE FROM Log WHERE message LIKE '%lib/ladon/middleware/caching.rb:49 run> terminated with exception%' AND floor(timestamp/101) = (timestamp/101) AND newrelic.logs.customEventType IS NULL

これらの新しい関数により、Pipeline Control ゲートウェイを操作する際の NRQL クエリの機能が大幅に拡張され、より正確なデータ分析と管理が可能になります。

Copyright © 2025 New Relic株式会社。

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