10/7更新: すでに大部分のアカウントでの有効化が行われました。影響が出るアラート条件の変換をサポートするLoss of Signal Alerts Migrator アプリをNew Relic Oneで公開していますので、こちらのドキュメントをご参照の上ご利用ください。

NRQL条件アラートに対応したNew Relic Oneストリーミングアラートをリリースします。既存のアラート条件に影響を与える可能性があるため、まず最初にopt-in形式で利用が可能になっています。詳細はAnnouncing: New Relic One Streaming Alerts for NRQL conditions をご覧ください。以下に抄訳記事としてまとめています。

New Relicは、New Relic Oneのための統一された新しいストリーミングアラートプラットフォームを展開しています。この新しいストリーミングアラートプラットフォームはNRQLアラート条件に対応しており、今後1年間ですべてのアラート条件がNRQL条件に統合される予定です。

New Relic Oneのストリーミングアラートは以下のような特徴を持っています。

  • データ遅延や処理遅延の影響を受けにくい、より信頼性の高いアラートを実現
  • 評価対象となるデータポイントの精度の向上
  • ストリーミング・アルゴリズムの改善により検出までの時間を短縮し、アグリゲーション時間を設定可能にしました。
  • 監視する信号の制御性が向上しました。信号のギャップを評価する方法、信号が失われたとみなすタイミング、および取るべきアクションを指定できます。
  • テレメトリタイプ、監視対象の信号のソース、NRQLクエリの仕様に関係なく、一貫したアラート条件の動作と設定が可能。
  • アラート条件が監視できる時系列の数と設定できる条件の総数のスケーラビリティが向上しました。

opt-inによる移行

この新しいストリーミング・プラットフォームをロールアウトする際に、集約の時間枠にデータが存在しない場合の処理方法に関連して挙動を変更した点があります。エンティティがデータ送信を停止したかどうかを判断するためにシグナルが「0」になっる条件を監視している場合、新しいプラットフォームに移行した後はこのアプローチは機能しなくなります。この機能を維持するためには、誤検出を防ぐために、アカウントを移動する前にこれらの条件で信号の損失検出(Loss of Signal detection)を有効にする必要があります。検証するために今すぐこの新しいプラットフォームにオプトインすることができます。ロールアウト計画の詳細については、下記のFAQセクションをご覧ください。

信頼性と精度の向上

この新しいストリーミング・プラットフォームは、ストリーミング・アルゴリズムを、受信データが来るたびにストリーミングしているアグリゲーション時間窓を前方に移動させる、イベント・ベースのメカニズムにアップグレードします。現在のモデルでは、サーバー上のクロックを使用してアグリゲーションをトリガーしています。新しいアプローチでは、アグリゲーション・ウィンドウは関連するデータ・ポイントが到着するまで待機するため、データ・ストリームのラグによって引き起こされるかもしれない負の影響が大幅に減少します。また、ポーリングベースでデータを集めているクラウドIntegration では、アラートの待ち時間が大幅に短縮され、精度が向上します。

設定可能なギャップ充填戦略

モニタリングされているすべてのシグナルまたは時系列がデータポイントの一貫した流れを持っているわけではありません。ストリーミング・アラート・プラットフォームは、指定された期間の時間窓を評価します。多くの場合、New Relicに送信されるテレメトリ信号にはギャップ、つまりデータが存在しない時間枠があります。新しいストリーミング・プラットフォームでは、それらのギャップをどのように評価すべきかを指定することができます。また、各アラート条件ごとに、外挿戦略(extrapolation strategies)とも呼ばれるさまざまなギャップ充填戦略を設定することもできます。

信号損失の検出

New Relic One ストリーミングアラートプラットフォームは、信号損失の検出を公式にサポートします。現在のプラットフォームでは、これを実現するための回避策がありますが、それらは一貫性がありません。そして、イベントベースのストリーミングアルゴリズムへの移行により、その回避策が利用できなくなります。設定可能な信号損失の検出機能を使用すると、任意のNRQLアラート条件で、最後のデータポイントから信号が消失したとみなす経過時間を指定するだけで、損失を判断することができます。この時間が経過したとき、信号の損失を通知できます。もしくは、エンティティや信号が消えると考えられる場合は未解決の違反を閉じることも簡単にできます。

より速いアラート(1分未満の検出)

New Relic One ストリーミングアラートプラットフォームでは、すべてのテレメトリデータを1分未満の時間枠で評価することができます。アグリゲーション時間を最短5秒から最大15分まで設定することができます。これにイベント駆動型ストリーミング・アルゴリズムの利点を組み合わせることで、精度と信頼性を向上させながら、1分未満の検出を実現することができます。データ構成とシナリオの要件に応じて、10~15秒という短い検出時間を実現することができます。

Q&A

Q: いつ使えるようになりますか?
A: NRQL条件でNew Relic Streaming Alertsを有効にするために、opt-inを今すぐ申し込めます。
次に、10月5日の週に大部分のアカウントで有効にする予定です。
信号の損失を監視している可能性のあるNRQL条件を持つアカウントは、10月28日に有効化されます。どのようなNRQL条件かというと、”Less Than “演算子を使用しているか、演算子と閾値で “Equals 0 “のいずれかのNRQL条件です。

Q: アカウントで有効にするにはどうすればいいですか?
A: このフォームに記入してください: https://sgnf.typeform.com/to/FkUEMwBP
火曜、水曜、木曜のあるタイミングで一括でアカウントを有効化する予定です。
アカウントを有効にするタイミングを指定し、ご質問がある場合はお知らせください。また、担当営業にご相談いただくことも可能です。

Q: 自分のアカウントが有効になっているかどうかは、どのようにして知ることができますか?
A: opt-inに申し込んで機能が有効になると、NRQLアラート条件の作成・編集画面の[CONDITION SETTINGS] > [Advanced signal settings]に次のような画面が表示され編集できるようになります。

10/5の週にこの機能が導入されると、ポリシーページとNRQL条件の作成/編集ページにバナーが表示されます。アカウントが有効になっていない場合、バナーは New Relic One Streaming Alerts を有効にするよう求め、このドキュメントにリンクします。

Q:ドキュメントはありますか?
A: はい。信号損失とギャップフィリング戦略の概要、およびそれらをgraphQLで設定する方法については、「NerdGraph API: Loss of signal and gap filling」をご参照ください。
追加のドキュメントはまもなく公開され、このセクションは更新されます。

Q: これらの機能はどのように管理すればよいですか?
A: NRQL 条件のUI、NRQL 条件用のGraphQL API、NRQL 条件用のREST APIを使用して、NRQL 条件でこれらの機能を設定することができます。

Q: 新しいストリーミング プラットフォームが有効にされる前に、これらの設定を行うことはできますか?
A: はい、10/5以前にオプトインしている場合は、アカウントで有効にする前にUIを先に有効にすることができます。これにより、機能が有効になる前に、必要に応じてNRQL条件を更新することができます。10/5 の週以降、すべてのアカウントが UI と API にアクセスできるようになります。その際にアカウントで有効になっていない場合は、UIとAPIを使用して、これらの新機能を有効にする前にアラート条件を更新することができます。

Q: New Relic One ストリーミング プラットフォーム はすべてのアラートサービスをカバーしますか?
A: NRQL条件のみが、New Relic One ストリーミング プラットフォームの機能をフルセットで利用することができます。APM、Infrastrucutre、Syntheticsのアラートは、年内にNRQL条件に移行する予定です。

Q: 上記の機能は今すぐすべて利用できますか?
A: ギャップフィリングと信号損失検出は現在利用可能です。残りの機能、設定可能な集計時間、イベントベースのストリーミングアルゴリズムは、ロールアウト期間中に順次リリースされる予定です。

Q: これで誤検出はなくなりますか?
A: いいえ、しかし、これにより誤検知は大幅に減少するはずです。偽陽性および偽陰性のご検知をなくすことは、すべてのアラートエンジンが継続的に取り組んでいる大胆な目標であり、私たちはその目標に向かって努力を続けています。

さらに、信号損失検出は、一定期間データがないことを監視しています。時刻が関係している場合はいつでも、データの流れに大きな混れがあるときに誤検知の可能性が高くなります。New Relicプラットフォーム内でレイテンシが発生している場合はその点を考慮しますが、データ収集ソースとNew Relic One ストリーミング プラットフォームの間で発生する可能性のあるすべての信号損失に対応しているわけではありません。

Q: 他にも質問がありますが、どのようにして回答を得ることができますか?
A: ご質問やご懸念がある場合は、担当営業にお問い合わせください。

ソフトウェアエンジニア、インフラエンジニアなど自社開発や自社運用の現場で経験を積んだのち外資系ソフトウェアベンダーでのテクニカルサポートを経て現職。New Relicユーザーだった経験あり。コミュニティでの登壇活動も多く、Microsoft MVPを7年連続受賞中。Microsoft Certified Azure Solutions Architect Expert。得意分野はC#をはじめとするソフトウェア開発、Kubernetes関連技術およびパブリッククラウド。 View posts by .