データの取り込みを管理する1 つの方法は、 Pipeline Control cloudルールを使用することです。 Pipeline cloudルールを作成するには、 New Relicの使用量ベースの価格設定を使用する必要があります。
作成できるルールには 2 つのカテゴリがあります。
データ削除ルール
- 次の形式の NRQL を使用して、 アクション を使用して、データ型全体またはデータ サブセット(オプションのフィルターを使用) をドロップします。
Drop data
DELETE FROM DATA_TYPE_1, DATA_TYPE_2 (WHERE OPTIONAL_FILTER)
- 次の形式の NRQL を使用して、 アクション を使用して、データ型全体またはデータ サブセット(オプションのフィルターを使用) をドロップします。
属性ルールの削除
- アクション を使用して、データ型から属性を削除します(オプションのフィルターを使用)* *
Drop attributes
。NRQL は次の形式です。DELETE dropAttr1, dropAttr2 FROM DATA_TYPE (WHERE OPTIONAL_FILTER) - このタイプのルールでは、
SELECT
句に生の属性名の空でないリストを渡す必要があります。
- アクション を使用して、データ型から属性を削除します(オプションのフィルターを使用)* *
ヒント
Pipeline Control cloudルールは、ルールを作成した瞬間から到着するデータにのみ適用され、 すでに取り込まれたデータは削除されません。
課金対象としてカウントされるデータと課金対象としてカウントされないデータの詳細については、 「データ取り込み」を参照してください。
クラウドルールのデータ範囲
cloudルールを使用して、次のデータ タイプを対象にします。
APMで報告されたイベント
ブラウザで報告されるイベント
モバイルで報告されたイベント
シンセティック・レポート・イベント
カスタムイベント( APMエージェントAPI や Event API で生成されるようなもの)。
ログデータ(UIを使ってデータをドロップすることも可能です )
デフォルトのインフラストラクチャ監視イベント と インフラストラクチャ統合 イベント。いくつかの注意事項:
- このデータを削除すると、生データは削除されますが、集約された
SystemSample
、ProcessSample
、NetworkSample
、およびStorageSample
イベントは引き続き利用できます (詳細については、 「データ保持期間」を参照してください)。 このデータは引き続き利用可能ですが、取り込みにはカウントされず、課金対象にはなりません。 - 生のインフラストラクチャ データはアラートに使用されるため、そのデータをドロップした場合、そのデータについてアラートを発行することはできません。集計されたデータは引き続き利用できるため、59 分を超える時間範囲のデータがグラフに表示される場合があります。
- このデータを削除すると、生データは削除されますが、集約された
次元メトリックス。 注意点:
- イベント-to-メトリクス サービスによって生成されたメトリクスの場合: クラウド ルールは機能しませんが、イベント-to-メトリクス ルールを無効にするか再構成することで、これらのメトリクスを停止したり、プロパティを削除したりできます。
- メトリック タイムスライス データはcloudルールでは削除できません。 APMメトリックタイムスライスデータの詳細については、このドキュメントを参照してください。
NRQL制限
- NRQL クエリの長さの制限は4096文字です。長さを超えると、
INVALID_NRQL_TOO_LONG
エラーが発生します。分割できない長いクエリに基づいてデータを削除する必要がある場合は、 New Relic サポートにお問い合わせください。 JOIN
サブクエリはサポートされていません。- 特定の属性を持つデータを選択するには、
WHERE
句を指定できます。 LIMIT
、TIMESERIES
、COMPARE WITH
、FACET
などの機能やその他の句は使用できません。SINCE
UNTIL
はサポートされていません。時間固有のルールがある場合(たとえば、将来のある時点まですべてをドロップするなど)、WHERE timestamp < (epoch milliseconds in the future)
を使用します。SINCE
を使用して履歴データを削除することはできません。クラウド ルールは、ルールの作成後に報告されたデータにのみ適用されます。すでに報告されているデータを削除する必要がある場合は、 「既存のデータの削除」を参照するか、 New Relic サポートにお問い合わせください。
監査ルールの履歴
誰がcloudルールを作成および削除したかを確認するには、 アカウント監査ログを作成します。 リスト エンドポイントには、ルールを作成したユーザーのユーザー ID も含まれます。
データを落とす際の注意点
クラウド ルールは各データ ポイントに個別に適用されます。たとえば、次の 3 つのデータ ドロップ ルールを見てみましょう。
重要
ルールを作成するときは、設定した条件を満たすデータをルールが正確に識別して破棄するようにする責任があります。また、ルールと New Relic に開示するデータを監視する責任も負います。
1. DELETE FROM MyEvent WHERE myAttr not in ('staging')2. DELETE FROM MyEvent WHERE myAttr not in ('production')3. DELETE FROM MyEvent WHERE myAttr in ('development')
これらの 3 つのルールは各データ ポイントに個別に適用されます。要約すると、任意の値を持つmyAttr
を含むすべてのMyEvent
イベントが削除されます。
myAttr: 'staging'
-> ルール2に一致myAttr: 'production'
-> ルール 1 に一致myAttr: 'development'
-> ルール1、2、3に一致myAttr: 'uuid-random-string'
-> ルール1と2に一致
New Relic は、この機能によってデータ漏洩に関する懸念が完全に解決されることを保証することはできません。New Relic開発したルールの有効性をレビューしたり監視したりしません。 常にクエリをテストおよび再テストし、ドロップ ルールの作成後に意図したとおりに動作することを確認してください。
センシティブなデータに関するルールを作成すると、どのような種類のデータを保持しているのか、データやシステムの形式(例えば、電子メールアドレスや特定のクレジットカード番号を参照することなど)などの情報が漏れてしまいます。作成したルールは、そのルールに含まれるすべての情報を含めて、関連するロールベースのアクセス制御権限を持つすべてのユーザーが表示および編集できます。
ドロップされるのは新規データのみです。既存のデータ の編集や削除はできません 。
cloudルールの管理
ルールを作成および編集するには、 Pipeline Control UIまたはNerdGraph API エクスプローラー( one.newrelic.com > Apps > NerdGraph API explorer )を使用できます。
注意
データを削除する場合は注意が必要です。落としたデータは復元できません。潜在的な問題の詳細については、 「 注意事項 」を参照してください。
ユースケースの例
ルールが機能することを確認する
cloudルールを作成したら、期待どおりに動作しているかどうかを確認することをお勧めします。 登録が成功するとすぐにルールが有効になるはずなので、登録したクエリのTIMESERIES
バージョンを実行して、データが削除されるかどうかを確認してください。
注: 時系列データは、イベント時間 (処理時間ではない) を x 軸としてレンダリングされます。New Relic は最大 24 時間先のタイムスタンプを持つデータを受け入れるため、ルールが作成される前に New Relic に送信されたが、イベント タイムスタンプがルール作成後のデータが表示される場合があります。
クラウドルールタイプ | NRQL |
---|---|
| Cloud rule NRQL:
Validation NRQL:
これは0に低下するはずです。他に影響がないことを確認するには、 |
| Cloud rule NRQL:
Validation NRQL:
両方の行が0にドロップする必要があります。これらの属性を含むイベントに影響がなく、それでも影響がないことを確認するには、 |
NerdGraphの例
cloudルールを作成する
ドロップデータ:
mutation { entityManagementCreatePipelineCloudRule( pipelineCloudRuleEntity: { description: "Since we only care about MyEvent in staging and production, let's drop all MyEvent data in the test environment" name: "Drop MyEvent in test environment" nrql: "DELETE FROM MyEvent where environment = 'test'" scope: { id: "your_nr_account_id", type: ACCOUNT } } ) { entity { id name nrql } }}
ドロップ属性:
mutation { entityManagementCreatePipelineCloudRule( pipelineCloudRuleEntity: { description: "Since we only care about MyEvent in staging and production, let's drop all MyEvent data in the test environment" name: "Drop MyEvent in test environment" nrql: "DELETE jvmId, targetAttr FROM MyEvent where environment = 'test'" scope: { id: "your_nr_account_id", type: ACCOUNT } } ) { entity { id name nrql } }}
cloudルールを削除する
mutation { entityManagementDelete( id: "MTAyNTY1MHxOR0VQfFBJUEVMSU5FX0NMT1VEX1JVTEV8MDE5NWI0NDYtNjk5My03NGE5LWEyYjktMzBjMzQ1ODM0NTUz" ) { id }}
cloudルールを表示
単一のcloudルールを取得します。
{ actor { entityManagement { entity( id: "MTAyNTY1MHxOR0VQfFBJUEVMSU5FX0NMT1VEX1JVTEV8MDE5NWI0M2UtYmFhNy03NDk3LWI0N2ItNjUyMmEzZDFmZTFi" ) { id ... on EntityManagementPipelineCloudRuleEntity { id name description nrql metadata { createdBy { id } createdAt } } } } }}
すべてのcloudルールを一覧表示します。
{ actor { entityManagement { entitySearch(query: "type = 'PIPELINE_CLOUD_RULE'") { entities { id type ... on EntityManagementPipelineCloudRuleEntity { id name nrql } metadata { createdBy { id } } } } } }}
ドロップできないイベントと属性
cloudルールを使用して次のイベントとプロパティを削除することはできません:
もっと詳しく知る
もっと知りたい方へのおすすめ情報
- NerdGraphの基礎知識と用語集
- NRQLの基礎知識
- ルールに関するコミュニティのディスカッションについては、 サポート フォーラム を参照してください。cloud
- 複雑な組織のデータ取り込みの管理の詳細については、 データ取り込みガバナンスを参照してください。