すでにいくつかのAPM Agentの最新版ではリリースされているので気づいた方もおられるかもしれませんが、APM Agentからのカスタムイベントなどの送信間隔が1分おきから5秒おきになる「Real-Time Streaming」と呼ばれる機能が導入されています。本機能は最終的に全ての言語のAPM Agentで利用可能になる予定ですが、.NET, PHP, C では来年の予定となっています。そのほかの言語では最新版で利用可能になっています。

APM Agentが送信するイベントは、カスタムイベントの他に、デフォルトで送信するTransactionなどのイベント、メトリクス情報などがありますが、今回5秒間隔で送信されるようになるのは、Spanイベント以外のカスタムイベントを含むイベントとなっています。これらのイベントを利用する主な目的はNew Relic Oneのダッシュボードですので、実際に試してみました。

このように、20:50:11に発生したイベントが20:50:19と10秒以内にダッシュボードに表示されていることがわかります。また、Spanイベントはまだ反映されていないこともわかります。

Real-Time Streamingをダッシュボードで有効に活用するためには、ダッシュボードのNRQLにSINCE 5 minutes agoSINCE句を使ってデフォルトの表示期間を5分にする必要があります。これはダッシュボードの仕様によるもので、表示間隔の1/60がチャートごとの自動リロード間隔となります。すなわち、5分前だと5秒おきにリロードされるため、5秒おきのイベントの送信のメリットを享受できます。

Real-Time StreamingについではAgentを最新版にすると自動で有効になります。1回あたりのイベントの送信数の上限はTransactionとCustomイベントが10,000で、Errorが100ですが、5秒おきに送信されるようになると、10,000/12=833, 100/12=8がそれぞれ1回あたりの上限となります。また、メトリクスの送信間隔は1分おきのままですので、従来のRPMのUIでの更新間隔は変更ありません。また、この機能により今後アラートのトリガーなどがより高速化される可能性もありますが、今回はまずAPMのAgentからの送信間隔のみのアップデートとなっています。

Real-Time Streamingを含む、New Relic の全機能はこちらから無料アカウントでお試しいただけます。

無料トライアル