アラートの相関ロジックにより、関連する問題がグループ化され、煩わしいアラートや冗長なアラートが削減されます。 イベントがシステムに入力されると、相関ロジックの対象となります。 対象となる問題は、時間、集計コンテキスト、関係データに基づいて評価されます。 複数の問題が関連している場合、相関ロジックにより、関連する問題が 1 つの包括的な問題にまとめられます。
この相関ロジックをdecisionsと呼びます。 決定事項は組み込まれていますが、決定事項ページで独自の決定事項を作成してカスタマイズすることもできます。 決定ページを見つけるには、 one.newrelic.com > All capabilities > Alerts > Decisionsにアクセスしてください。 ニーズに最適な決定を構成するほど、New Relic はインシデントの相関関係をより正確に把握し、ノイズを減らし、オンコール チームに提供するコンテキストを強化できます。
one.newrelic.com > All capabilities > Alerts > Incident intelligence > Decisions: UI では、各決定がインシデントとどのように相関しているかが表示されます。
相関関係とは何ですか? また、どのように機能しますか?
最新のアクティブなインシデントは、相関ロジックで利用できます。たとえば、オーストラリアとロンドンで合成モニターが失敗しているという 2 つのアラートをシステムが受信したとします。これら 2 つのアラートは、独自のインシデントを作成します。これらのインシデントは、チームの既存のインシデント作成ポリシーに基づいて独自の問題を生成します。次に、New Relic の相関ロジックがこれらのインシデントを相互にテストして、類似点を見つけます。この場合、複数の場所で失敗しているのは同じモニターであるため、New Relic は両方のインシデントを、関連する各イベントを含む単一の問題にマージします。
イベントを相互に関連付ける場合、組み合わせのすべてのペアを相互にチェックし、可能な限り組み合わせます。例えば:
- 私たちのアルゴリズムは、インシデント A と B を関連付けます (「AB」と呼びます)。
- 私たちのアルゴリズムはインシデント B と C を関連付けます (「BC」と呼びます)。
- B は両方の問題に存在するため、アルゴリズムは 3 つのインシデントすべてを 1 つの問題に関連付けます。
相関ポリシーを構成する
アラートベースの問題の相関関係を有効にするには、それぞれのアラート ポリシーの相関関係に接続する必要があります。
アラートポリシーの相関関係を有効にするには、ボックスCorrelate and suppress noiseをチェックします。
決定の種類
意思決定は、インシデント インテリジェンスが問題を相互に関連付ける方法を決定します。New Relic の相関ロジックは、次の 3 つの異なる意思決定タイプでチームが利用できます。
Global decision
: アラートの使用を開始すると、一連のデフォルトの決定が自動的に有効になります。
Suggested decision
: New Relic の相関エンジンは、イベント データを継続的に評価し、相関パターンをキャプチャしてノイズを削減する決定を提案します。 提案された決定のシミュレーション結果をプレビューし、アクティブ化を選択できます。
Custom decision
: チームはユースケースに基づいて決定をカスタマイズし、相関関係の有効性を高めることができます。 New Relic の決定 UI を使用すると、決定内のすべてのディメンションを柔軟に構成できます。
積極的な決定を確認する
チームの既存の決定を確認するには:
one.newrelic.com> Alerts > Incident intelligence > Decisions
に移動します。
アクティブな決定のリストを確認します。問題間の相関関係を作成するルールロジックを表示するには、決定をクリックします。
決定が関連付けられたインシデントの例を表示するには、
Recent correlations
タブをクリックします。
これらのグローバル決定を有効または無効にするオプションがあります。
ソースの構成
意思決定を構成する前に、関連付けるソースを決定することが重要です。ソースはデータ入力です。
以下のいずれかのソースからデータを得ることができます。
グローバルな決定
チームがアラートの使用を開始すると、グローバル決定が自動的に有効になります。 設定は不要で、チームですぐに利用できます。 グローバルな決定は、さまざまな相関シナリオをカバーします。
次の表は、自動的に有効になるすべてのグローバル決定の説明を示しています。
決定名 | 説明 |
---|---|
同じ New Relic ターゲット名 (NRQL) | しきい値を超えたエンティティ名とNRQLクエリが同じ場合に相関が有効になります。同じ NRQL アラート条件 からの関連イベントが識別されます。この決定は、たとえば、同じトランザクション クエリ レイテンシーの偏差がある問題を関連付けるのに役立ちます。 |
同じ New Relic ターゲット名 (非 NRQL) | New Relic の非 NRQL アラートしきい値が同じであるため、相関関係が有効になります。REST ソースには適用されません。非 NRQL エンティティは、 エンティティ(通常は APPLICATION、HOST タイプ) を指します。 エンティティ合成に関する New Relic GitHub リポジトリを参照してください。この決定により、同じ事業体からの関連問題が特定されることになります。たとえば、ホストのメモリ使用量が多い問題とホストが報告しない問題は、同じ原因による可能性が高くなります。 |
同じ New Relic ターゲット ID | New Relic の非 NRQL アラートしきい値が同じであるため、相関関係が有効になります。REST ソースには適用されません。エンティティ ID を使用してエンティティ インスタンスを一意に識別します 。entity.guidについて詳しく学習してください。 |
同じ New Relic の状態 | New Relic 条件 ID が 同じであるため、相関関係が有効になります。たとえば、関連サービスによる CPU 使用率の増加は、同じ CPU 使用状況からインシデントをトリガーするため、特定されます。このロジックは、条件レベルの細分性と相関時間ウィンドウの定義における柔軟性により、条件ごとに 1 つの問題に対する アラート ポリシーの問題作成設定オプション を超える価値があります。 |
同じ New Relic 条件とディープ リンク URL | New Relic条件 IDとディープリンク URL が同じであるため、相関関係がアクティブになります。 ディープリンク URL は、 アラート条件に加えて、時系列と時間範囲の情報を提供します。 これらの問題を相関させることで、時間範囲のメトリックを使用してインシデント対応フロー内の関連するインシデントを確認し、詳細な分析を実行することが容易になります。 インシデントが New Relic アラート条件によってトリガーされた場合、ディープ リンク URL は自動的に生成されますが、REST ソースの場合、 deepLinkUrl はユーザーが定義する必要があります。 |
同じ New Relic の状態とタイトル | New Relic の 状態名とタイトルが 同じであるため、相関関係が有効になります。これは、同じ警告メッセージとのより緊密な関連性を明らかにするために、条件に加えてタイトルを比較することで洗練されたオプションです。 |
同じ k8s デプロイメント | kubernetes デプロイメントが同じであるため、相関ロジックがアクティブ化されます。多くのインシデントは、単一の展開変更によるものです。この決定は、同じ厄介な Kubernetes エンティティの展開からの問題を軽減するためのものです。 |
同じアプリケーション名、ポリシー、ID | カスタム アプリケーション名、ポリシー、およびカスタム ID が同じであるため、相関ロジックがアクティブ化されます。アプリケーションの問題を軽減するために、これらの要素と問題を関連付けます。特に、カスタム タグのユーザーに対応します。タグの詳細については、こちらをご覧ください。カスタム タグ ID は、データ間の接続を識別するためのキーとして使用される条件ファミリ ID またはその他の ID 値によって定義できます。 |
同様の警告メッセージ | インシデントのタイトルが類似しており、同じエンティティからのものであるため、相関関係がアクティブになります。これは、同様のアラート条件によって引き起こされる同じエンティティからの問題を減らすためです。 |
同じ安全な資格情報、パブリックの場所、およびタイプ | 安全な資格情報、公開の場所、カスタム タイプがそれぞれ同じであるため、相関関係がアクティブになります。これは、通常単一の根本原因 (合成モニターの障害など) によって引き起こされ、同じセキュリティ資格情報を持つ同じ地理的位置/地域からの問題を関連付けるためであり、同じソリューションで対処できる可能性が高くなります。この決定を活用するにはタグを追加してください。 |
類似の問題構造 | 両方のインシデントが類似した属性構造とデータ内容を持っているため、相関関係がアクティブになります。これはクラスタリングのより単純なバージョンであり、行列計算に高度な類似性アルゴリズムを採用して、関連性の高い問題を軽減します。 |
トポロジ依存 | インシデントは依存関係のあるインスタンスから生成されるため、相関関係がアクティブになります。すぐに使用できるトポロジ相関について詳しくは、こちらをご覧ください。 |
提案された決定を使用する
選択したソースからのデータは、ノイズの削減に役立つパターンについて継続的に検査されます。データでパターンが観察されると、相関ロジックは、これらのタイプのイベントが将来相関することを可能にする独自の決定を提案します。
開始するには、 Decisions UI ページのトピックのSuggested decisionsタブをクリックします。 各提案された決定をクリックすると、提案された決定の背後にあるロジックと推定相関率を確認できます。
one.newrelic.com > All capabilities > Alerts > Decisions: 決定 UI からの統計の例。
提案された決定を有効にするには、 Add to your decisionsをクリックします。 有効にすると、決定はチームのメインの決定表に表示されます。 すべての提案された決定では、作成者が New Relic AI (これは New Relic アラートを指します) として表示されます。
提案された決定がニーズに合わない場合は、 Dismissをクリックします。
カスタム決定を作成する
独自のカスタム決定を構築することで、ノイズを減らし、相関関係を改善できます。 意思決定を開始するには、 one.newrelic.com > All capabilities > Alerts > Decisionsに移動し、 Create new decisionをクリックします。
意思決定ビルダーには 2 つのバージョンがあります。
- 基本意思決定ビルダー (プレビュー中)
- 高度な意思決定者
これらの意思決定ビルダーの使用方法の詳細については、読み続けてください。
決定要素
決定は、次の要素で構成されます。
- 属性による関連付け: 属性の類似点または相違点によってすべてのインシデントを関連付けます。
- 特定の値でフィルター処理: インシデントを特定の値を持つものに絞り込みます。
- 関連するエンティティでフィルター処理: 検索する共有接続または依存関係の種類を選択します。
- 相関時間範囲: 2 つのインシデントの作成時間の最大許容時間差を設定して、それらが相関のために考慮されるようにします。
インシデント間の接続が設定されると、 アルゴリズムは 関連するインシデントを 1 つの問題にグループ化します。
基本的な意思決定者
This feature is currently in preview and available for only some customers. アクセス権がない場合は、高度な意思決定ビルダーの手順を参照してください。
基本的な意思決定ビルダーの使用方法を示す短いビデオ (3 分 25 分) を次に示します。
基本的なデシジョン ビルダーは、ユース ケースの大部分をカバーし、相関一致のフィルター条件を指定できる "属性による相関" に焦点を当てています。関連付けられている両方のインシデントに、特定の値に対して同じフィルター ロジックを適用することもできます。たとえば、両方のエンティティ名が host 1
の場合、インシデントを関連付けることができます。
基本意思決定ビルダーを使用して独自のカスタム意思決定を作成するには、次の手順を実行します。ステップ 1、2、および 3 はそれ自体はオプションですが、意思決定を作成するには、3 つのうち少なくとも 1 つを定義する必要があることに注意してください。
ステップ 1: 属性による関連付け
ドロップダウン メニューから属性を選択します。最も一般的なオプションである equal
演算子が事前に選択されていますが、別の 演算子を選択することもできます。
通常、2 番目の属性は最初の属性と一致するため、自動入力されます。自動入力されたオプションをそのまま使用するか、別の演算子を選択できます。
完了すると、 シミュレーションが 自動的に実行されます。
これらの手順を繰り返して、最大 8 つのロジック フィルターを追加できます。
ステップ 2: 特定の値でフィルタリングする
Filter by specific values
セクションを開いて追加のフィルターを表示するには、See more options
をクリックします。
属性を選択します。
equal
演算子が事前に選択されていますが、別の 演算子を選択することもできます。選択した属性に期待される値を選択します。複数の選択がサポートされています。
完了すると、 シミュレーションが 自動的に実行されます。
これらの手順を繰り返して、最大 8 つのロジック フィルターを追加できます。
ステップ 3: 関連エンティティでフィルター処理する
Filter by related entitiesをクリックして、エンティティ クラスを選択します。
データが New Relic エージェントによって収集されると、自動トポロジ相関が得られます。デフォルトのトポロジ相関の詳細については、こちらをご覧ください。
NerdGraph API を使用してトポロジ設定をセットアップすることもできます。これにより、トポロジ関連の決定をトポロジ データと一致させることができます。トポロジ相関の設定の詳細については、こちらをご覧ください。
ステップ 4: 相関時間範囲の設定
これにより、2 つのインシデントの作成時間の最大許容時間差が設定され、2 つのインシデントが相関対象と見なされます。この範囲内のインシデントは、指定されたルールに基づいて評価されますが、範囲外のインシデントは関連付けられません。
時間範囲はデフォルトで 20 分に設定されています。1 ~ 120 分の間で調整できます。
ステップ 5: シミュレーションを使用して決定をテストする
フィルター ロジックを追加すると、システムは過去 7 日間のインシデント データを使用して シミュレーションを 自動的に実行します。
Simulateをクリックしてシミュレーションを手動でトリガーすることもできます。これは、決定に何か変更があった場合に実行できます。
ステップ 6: 決定に名前を付けて保存する
名前と説明パネルにアクセスするには、 Create decisionクリックします。 システムはあなたの決定に基づいて名前を生成します。 必要に応じて名前と説明をカスタマイズします。
高度な意思決定者
高度な意思決定ビルダーを使用すると、相関関係にある 2 つのインシデントに異なるロジック フィルターを適用することで、より複雑な意思決定を作成できます。たとえば、一方のエンティティ名が host 1
で、もう一方のエンティティ名が host 2
の場合、インシデントを関連付けることができます。時間枠のみを構成できる以外に、より高度な設定もあります。
高度な意思決定ビルダーを使用するには:
one.newrelic.com > All capabilities > Alerts > Decisions
に移動します。
Create new decision
クリックし、次に
Use advanced builder
をクリックします。
利用可能なオプションの詳細については、読み続けてください。
重要な用語:
独自のカスタム決定を作成するには、次の手順を実行します。ステップ 1、2、および 3 はそれ自体はオプションですが、意思決定を作成するには、3 つのうち少なくとも 1 つを定義する必要があることに注意してください。
ステップ1:データをフィルタリングする
相関関係は、任意の 2 つのインシデント間に発生します。フィルターが定義されていない場合、すべての着信インシデントが決定によって考慮されます。ニーズに合わせて決定を構成すればするほど、インシデントをより適切に関連付け、ノイズを減らし、オンコール チームに提供するコンテキストを増やすことができます。
チームは、インシデントの最初のセグメントとインシデントの 2 番目のセグメントのフィルターを定義できます。フィルター演算子は、部分文字列の一致から正規表現の一致までさまざまで、必要なインシデント イベントを対象にして、不要なイベントを除外するのに役立ちます。
ステップ 2: 属性による関連付け
データをフィルタリングしたら、インシデントのコンテキストを比較するときに使用するロジックを定義します。次の方法に基づいてイベントを相互に関連付けることができます。
- 標準演算子との属性値の比較
- 類似性アルゴリズムを使用した属性値の類似性
- キャプチャグループを使用した属性値の正規表現
- 類似性またはクラスタリングアルゴリズムを使用したインシデント全体の比較
ステップ 3: 関連エンティティによる関連付け
自動トポロジ相関の場合、テレメトリデータがNewRelicエージェントによって収集されていることを確認してください。すぐに使用できるトポロジ相関の詳細をご覧ください。
NerdGraph API を使用してトポロジ設定をセットアップすることもできます。これにより、トポロジ関連の決定をトポロジ データと一致させることができます。トポロジ相関の設定の詳細については、こちらをご覧ください。
ステップ4:名前を付けます
決定ロジックを構成したら、わかりやすい名前と説明を付けます。
ヒント
これらのオープン テキスト フィールドに機密情報や個人情報を追加しないようにすることで、セキュリティ上の懸念を最小限に抑えます。
これは、通知や UI の他の領域で使用され、どの決定によって一対のインシデントが相互に関連付けられたかを示します。 次のステップでデフォルトの詳細設定を更新しない場合は、 Create decisionをクリックして作成を終了します。
ステップ 5: 詳細設定を使用する
詳細設定領域を使用して、イベントを関連付けるときの決定の動作をさらにカスタマイズします。各設定にはデフォルト値があるため、カスタマイズはオプションです。
Time window
: 相関関係の対象となる 2 つのインシデントの作成時間間の最大時間を設定します。
Issue priority
: インシデントが相関している場合、デフォルトの優先度設定 (
inherit priority
) をオーバーライドして、より高い優先度またはより低い優先度を追加します。Frequency
: 決定をトリガーするための決定ロジックを満たす必要があるインシデントの最小数を変更します。
Similarity
: 決定ロジックで
similar to
演算子を使用している場合は、アルゴリズムのリストから選択して、その感度を設定できます。 これは、決定に含まれるすべてのsimilar to
演算子に適用されます。
論理演算子
Decision では、ロジック フィルターでインシデントの属性値を評価する方法を柔軟に定義するのに役立つ一連の演算子が提供されます。 基本的なものは、 equals 、 contains 、 starts with 、 ends with 、 existsと、それに応じた否定演算子です。 たとえば、 does not equal 。
類似度演算子is similar toがあり、この演算子に対して基礎となる類似度アルゴリズムを指定できます。 デフォルトでは、レーベンシュタイン距離が使用されます。
contains (regex)演算子を使用すると、正規表現条件を定義できます。 任意のデータ値に一致する強力な機能。
類似性アルゴリズム
使用する類似性アルゴリズムの技術的な詳細は次のとおりです。
正規表現演算子
decision を構築する場合、使用可能な演算子は次のとおりです。
contains (regex)
:ステップ1で使用:データをフィルタリングします。regular expression match
:ステップ2で使用:コンテキスト相関。
意思決定ビルダーは、正規表現についてこれらのドキュメントで概説されている標準に従います。
相関アシスタント
相関アシスタントを使用すると、より迅速にインシデントを分析し、意思決定ロジックを作成し、シミュレーションでロジックをテストできます。相関アシスタントを使用するには:
one.newrelic.com > All capabilities > Alerts > Issues & activity > Incidents
タブに移動します。
相関関係を調べたいインシデントのボックスをチェックします。 次に、インシデント リストの下部にある
Correlate incidents
をクリックします。
インシデントを相関させるための最良の結果を得るには、頻度の割合が低い共通の属性を選択してください。周波数の使用についての詳細をご覧ください。
Simulate
をクリックすると、新しい決定がデータの最後の 1 週間に及ぼす可能性のある影響を確認できます。
相関ペアの例をクリックして、使用する相関を決定します。
シミュレーション結果に満足したら、
Next
をクリックし、決定内容に名前を付けて説明してください。
シミュレーション結果に潜在的なインシデントが多すぎることが示されている場合は、決定のために別の属性とインシデントのセットを選択し、別のシミュレーションを実行することをお勧めします。シミュレーションの詳細をご覧ください。
シミュレーションの使用
シミュレーションは、先週のデータに対してロジックをテストし、発生した相関の数を示します。シミュレーション時に表示される決定プレビュー情報の内訳は次のとおりです。
Potential correlation rate:
この決定によって影響を受けるテスト済みのインシデントの割合。
Total created incidents:
この決定によってテストされたインシデントの数。
Total estimated correlated incidents:
この決定によって相関関係にあると推定されるインシデントの数。
Incident examples:
決定によって相関するインシデント ペアのリスト。ルールの属性と値、および各ペアのその他の一般的な属性が含まれます。 詳細を表示するにはインシデントをクリックします。
希望する結果が表示されるまで、さまざまな属性を使用してシミュレーションを必要な回数だけ実行します。準備ができたら、UIプロンプトに従って決定を保存します。
トポロジー相関
New Relic アラートの場合、トポロジーはサービス マップ、つまりインフラストラクチャ内のサービスとリソースが相互にどのように関連しているかを表します。
決定ユーザーの場合、デフォルトのトポロジ決定が追加され、アカウントで有効になります。カスタム決定を作成するオプションもあります。
当社のトポロジ相関は、インシデント ソース間の関係を見つけて、 インシデントとそれぞれの問題が相関するかどうかを判断します。トポロジ相関は、相関の品質と検出速度を向上させるように設計されています。
要件
自動トポロジ相関(トポロジグラフを明示的に設定する必要なし)の場合、テレメトリデータがNewRelicエージェントによって収集されていることを確認してください。サービスと環境にインストールされるNewRelicエージェントの種類が多いほど、インシデントを関連付けるためのトポロジ決定の機会が増えます。
トポロジー相関はどのように機能しますか?
このサービスマップでは、ホストとアプリが頂点であり、それらの関係を示す線がエッジです。
New Relicエージェントによって収集されたエンティティと関係に加えてトポロジを設定するには、 NerdGraphAPIを使用します。
カスタマイズされたトポロジ相関は、2つの主要な概念に依存しています。
Vertex:
頂点はモニター アプライアンスを表します。 これは、インシデント イベントの発生元、または問題となる症状を説明するソースです。 頂点には、アプライアンス GUID やその他の ID などの属性 (キー値のペア) が構成されており、これにより、着信インシデント イベントに関連付けることができます。
Edges:
エッジは 2 つの頂点間の接続です。 エッジは頂点間の関係を記述します。
トポロジを使用してインシデントを関連付ける方法を理解すると役立つ場合があります。
まず、NewRelicは関連するすべてのインシデントを収集します。これには、決定ロジックのステップ1と2が真であり、詳細設定で定義された時間枠内にあるインシデントが含まれます。
次に、頂点の定義属性とインシデントで使用可能な属性を使用して、各インシデントをトポロジグラフの頂点に関連付けようとします。
インシデントをトポロジ グラフの情報に関連付ける手順の例。
次に、インシデントに関連付けられた頂点のペアが、「トポロジー依存」演算子を使用してテストされ、これらの頂点が互いに接続されているかどうかが判断されます。
この演算子は、2 つの頂点を 5 ホップ以内で接続するパスがグラフ内にあるかどうかを確認します。
次に、インシデントが相互に関連付けられ、問題がマージされます。
インシデントイベントに属性を追加する
インシデントは、頂点の定義属性を使用して頂点に接続されます。 (トポロジの説明の下にあるトポロジの例では、各頂点に一意の値を持つ定義属性「CID」があります。) 次に、New Relic のアラート システムは、属性に一致する頂点を見つけます。
頂点で使用する定義属性がまだインシデントイベントにない場合は、次のいずれかのオプションを使用して追加します。
トポロジを作成または表示する
トポロジを設定したり、既存のトポロジを表示したりするには、 NerdGraphトポロジのチュートリアルを参照してください。