対象者
APMを使って予想外の自体が発生していることを特定したい人
効果
レスポンスタイム、スループットなど様々なメトリクスを見るときに、昨日や先週の同時刻といった一定期間前の値を比較したい場合があります。特に、曜日や時間によってスループットの変動が大きいサービスの場合、同じ程度のアクセスが期待される時間帯を基準にすることで、現在予想していない事態が発生していないか確認することができます。
New Relic 製品
New Relic APM, New Relic One
実装方法
このように過去と現在の特定時間を比較したい場合、な場合メトリクスを表示するグラフに比較対象を重ねて視覚化することができます。New Relicの場合、APMのレスポンスタイムとスループットについては、昨日および先週の同時刻との比較をチェックボックス一つで表示することができます。
これ以外のメトリクスやイベントの数値データ、あるいは任意の時間帯との比較を行いたい場合はNRQLのCOMAPRE WITH句を利用できます。COMPARE WITH句は時間範囲を指定するSINCE句やUNTIL句と一緒に指定し、SINCE句やUNTIL句で指定した時間範囲からCOMPARE WITH句で指定した相対時間だけ前の時間範囲を表示します。詳細な文法についてはこちらのドキュメントに記載があります。
実際に試してみましょう。NRQLはInsightsおよびNew Relic Oneのチャートビルダーが手早く確認できます。今回はNew Relic Oneで試してみましょう。New Relic Oneにログインして、右上の「Chart Builder」のメニューを選択し以下の画面を表示します。画面が異なる場合はBasicモードですのでチャートビルダー右上の「Advanced (NRQL)」をクリックします。
SELECTが表示されている箇所に以下のNRQLを貼り付けて「Run」をクリックして実行しみてください。なお、APMで取得できるデフォルトイベントをクエリしているため、APM agentをインストールしているアプリケーションがないと取得できません。
SELECT count(*) FROM TransactionError SINCE 1 hour ago TIMESERIES COMPARE WITH 4 hours ago
このNRQLにより、お客様のアカウントでAPMで計測している全てのアプリケーションのTransactionErrorの件数について、1時間前から現在までと5時間前から4時間前まで取得できます。もう少し複雑な条件として、3日前から2日前までと、5日前から4日前までを比較する場合は次のようになります。
SELECT count(*) FROM TransactionError SINCE 3 days ago UNTIL 2 days ago TIMESERIES COMPARE WITH 2 days ago
COMPARE WITH句の使い方としては、SINCEやUNTILと一緒に使い、SINCEやUNTILからどれくらい前のデータと比較するかという相対時間を指定することになります。
New Relic 担当者にもう少し話を聞いてみたい場合はこちらまで。
이 블로그에 표현된 견해는 저자의 견해이며 반드시 New Relic의 견해를 반영하는 것은 아닙니다. 저자가 제공하는 모든 솔루션은 환경에 따라 다르며 New Relic에서 제공하는 상용 솔루션이나 지원의 일부가 아닙니다. 이 블로그 게시물과 관련된 질문 및 지원이 필요한 경우 Explorers Hub(discuss.newrelic.com)에서만 참여하십시오. 이 블로그에는 타사 사이트의 콘텐츠에 대한 링크가 포함될 수 있습니다. 이러한 링크를 제공함으로써 New Relic은 해당 사이트에서 사용할 수 있는 정보, 보기 또는 제품을 채택, 보증, 승인 또는 보증하지 않습니다.