アプリケーション・パフォーマンス・モニタリング の機能

アプリケーションのモニタリング

アプリケーションパフォーマンスの傾向がひと目見てわかるように、アプリケーションモニタリングでは、ページのロード時間からエラーの発生確率、遅いトランザクションからアプリを実行中のサーバーの一覧まで、ひとつのビューで表示しています。

アプリケーションのレスポンスタイム

アプリケーションのレスポンスタイムとは、サーバー側で選択したタイムフレーム内で発生する Web トランザクションすべてにかかった合計時間の平均のことです。アプリケーションの概要では、アプリケーションサーバー内でかかった時間は、リクエストキュー、データベース、キャッシュ、アプリケーションコード、外部呼び出しなどを含むさまざまなレイヤーに分類されます。

最も時間のかかっているトランザクション

トランザクションは、概要ページおよび左のナビゲーションからアクセスできます。この最も時間のかかっているウェブトランザクションのリストは、特定の時間帯に比較的表面上で発生する遅めのトランザクション周りの集計データおよび、各レスポンスタイムの合計を表示します。このトランザクションを掘り下げると、各トランザクション周りの特定の詳細、例えばスループットや時間がかかるプロセスなどがはっきりとわかるので、トランザクショントレースにまで掘り下げることができます。

クロスアプリケーション・トレーシング

クロスアプリケーショントレーシングを使用して、サービス提供にフォーカスした分散型アプリケーションのモニタリングが可能になります。
New Relic は各層とサービスに渡りトランザクションを追跡し、アプリケーション全体の可視性を可能にします。そしてアプリケーション Topology Map にあるサービス中心の分散型アプリの各層を自動でマッピングしますので、各層間の関係性を簡単に見て取ることができるようになります。

トランザクションの分析結果

個別アプリケーションのトランザクションの分析結果をご覧ください。その分析結果には、ひとつのトランザクション内で実行された全プロセスのセグメントすべてのテキストリストが含まれています。% 時間、1 トランザクションに対する平均コール、および平均時間を含む各セグメントのパフォーマンスの詳細がメールで送られます。

スレッドプロファイル

New Relic のプロダクション環境のスレッドプロファイラーは、周りの環境にほとんど影響を及ぼすことなくアプリ内のホットスポットを特定します。スタックトレースは特定の時間内に収集・集計され、コールツリー状で表示されますので、細部まできめ細かい分析が可能になります。世界一簡単なパフォーマンスモニタリングができます。

サービスマップ

お使いのマイクロアーキテクチャをクリアに可視化して、御社の分散型アプリとサービスがどのように機能しているのか把握できます。

デプロイ分析、履歴、比較

このビューでは、アプリケーションに変更をデプロイする前と後のアプリケーションのパフォーマンスの様子を表示します。ユーザーに影響が出る前に変更を取り消すことも簡単にできます。

ヒストグラムとパーセンタイル

ヒストグラムとパーセンタイルは、全てのトランザクションのレスポンスタイムが把握できる、貴重な統計ツールです。アプリまたはブラウザ側のパフォーマンスに関する問題を具体的に可視化したい場合や、単純にトランザクションの外れ値を特定したい場合などでも、ヒストグラムとパーセンタイルは具体的なデータを表示しますので、問題を簡単に特定して、すばやく解決することができます。

外部サービスのパフォーマンス

外部サービスの計測は、クラウドにあるリソースやウェブサービス、その他ネットワーク呼び出しのような、プロセスの範囲外にあるサービスへの呼び出しをキャプチャします。外部サービスのダッシュボードは、御社が利用している外部サービスのトップ 5 を、1分あたりのレスポンスタイム、外部コール数のチャートを表示します。

トランザクションの追跡

お使いのアプリがどこで時間がかかっているのか可視化できれば、必要となるステップも一変します。目に見えない問題は解決しようがありませんが、一度可視化すれば次のアクションについて考えることができるからです。トランザクショントレーシングは、かなり遅れている HTTP リクエストの個別データ収集から SQL まで、New Relic のサービスをトランザクションの詳細の最小単位まで広げてカバーします。

キーとなるビジネストランザクションの追跡

キー・トランザクションは、全体のアプリケーションとはまた別に、サービスにおいて最も重要とされるビジネストランザクションをモニタリング、管理、および追跡することができます。キートランザクションでは、ユーザーはトランザクションレベルに関する警告の閾値を設定したり、トランザクションの特定のダッシュボード、Topology Map、および SLA レポートにアクセスすることができます。

X-Ray セッション

長期間に渡るプロファイラーの結果とトランザクショントレースを並べて表示して、キー・トランザクションのパフォーマンスをさらに深く洞察できます。X-Ray セッションを開始したあと、New Relic は 100 程度のトランザクショントレースおよびトランザクションのスレッドプロファイルを収集します。トランザクショントレースの数が 100 に到達するか、24 時間が経過すると、New Relic はトランザクショントレースの収集を停止します。

JVM パフォーマンス アナライザー (Java)

New Relic の JVM パフォーマンスアナライザーは、JVM で実行している人なら誰にでも関係しているデータを、お使いのプログラミング言語やフレームワークを問わず、かつてないほど大量に表示することができます。大量データの中には、スレッドアクティビティ、HTTP セッションデータ、接続プールメトリクス、クラスのロード・未ロードのカウントなどが含まれています。New Relic のポリシーに忠実に、このデータをわかりやすく理論的に表現しています。このデータの多くは JMX 値から派生していますが、New Relic が自動で綿密にチェックしますので、ユーザーは詳細を気にする必要がありません。

パフォーマンスデータ API へのアクセス

メトリクス名とメトリクスデータ上に、アプリケーションのレスポンスタイム、ページのロードにかかる時間、およびトランザクションとページのロード数などを含むカスタマイズしたクエリーを作成します。また、エラーの確率データとアプリケーションサーバーのパフォーマンスデータを受信することもできます。

データベースのモニタリング

データベースのモニタリングでは、お使いのデータベースのパフォーマンスの詳細な情報がご覧いただけます。その情報では、アプリケーションのパフォーマンス低下の原因となっている致命的なエラーなどがすぐにわかります。

データベース呼び出し処理時間

データベースの概要ページでは、レスポンスタイム、スループット、処理の遅い SQL トレース周りの一連のメトリクスがみれます。同時に、最も時間がかかっているデータベース呼び出しのランキングを見ることができます。

処理の遅い SQL のレポート

処理の遅い SQL のサンプルは、お使いのサイトの中でも一番パフォーマンスの悪い例としてあげられます。SQL の他に、お使いのデータベースのパフォーマンスに関する問題を修正するのに必要なコンテキストと診断情報も同時に収集します。

すべてのデータベース/キャッシュオペレーションを検索

“すべてのオペレーションテーブル” を可視化すると、選択した時間枠内で実行されたアプリのデータベースとキャッシュをすべて、オペレーションごとに表示できます。

データベース呼び出しのレスポンスタイムとスループット

各データベースの呼び出し(呼び出し時間)まで掘り下げて、その呼び出しのレスポンスタイムとスループット、呼び出しに特定の呼び出しにかかる消費時間と遅延した SQL トレースに関する詳細を表示します。

SQL クエリの分析

サイトのパフォーマンス低下の原因となっている SQL 文を正確に突き止めます。最も遅い SQL のサンプルを手に入れて、トレースを順番に並べることができます。そうすれば、コードのどこにその SQL が使われているかや、その修正方法までわかります。

データベース/キャッシュタイプをフィルタ

データストアのタイプ別に、ページをフィルタして、オペレーション、チャート、メトリクスなど特定の項目だけを表示することができます。

可用性とエラーのモニタリング

アラート機能 (Alert)では、警告状態や致命的状態を示す閾値を設定します。これにより、問題が発生したらすぐに把握することができ、解決も早まります。そして、コラボレーション機能では問題や解決方法をチーム内で簡単に共有することができます。

アラートポリシー

アラートポリシーは、類似するアラートの設定が要な複数のアプリケーションの閾値を設定します。特定の通知用のループを作成して、グループ別にアプリケーションポリシーのアラートチャンネルを管理できます。さらに、New Relic のアラートチャンネルを HipChat、JIRA、PagerDuty、Campfire などのアプリに組み込んで活用することもできます。もちろんすべてひとつのダッシュボードで管理することができます。

アプリケーション可用性のモニタリング

New Relic では、カスタマーがサイトに確実にアクセスできていることを確認するために、外部の Pinger を使用しています。Pinger サービスは常にアプリケーションにリクエストを送り、アプリケーションのエラーを記録し、またアプリケーションがダウンしている時にはダウンタイムを送信して、アプリケーションが常に利用可能な状態であることを確認しています。

レポート

カスタムダッシュボード

最も重要なパフォーマンスメトリクスは、カスタムダッシュボードに追加していつでも監視できます。コーディングなしでも、表示したいデータはどれでも追加して、ダッシュボードを自由にカスタマイズできます。追加したい New Relic のネイティブのパフォーマンスメトリクスと自分で作成したカスタムメトリクスをクリックして選択したら、インターフェースにドラッグ&ドロップするだけで、オリジナルダッシュボードを構築することができます。

可用性 (Availability)

可用性 (Availability) のレポートは、Pinger または Ping サービスと呼ばれることのある New Relic の availability モニタを使用して、サイトの稼働時間を測っています。この主なレポートチャートは、選択した時間枠内の 1 分あたりのスループット(1分あたりのコール数)と、1 分あたりのエラー数を比較します。この情報は、アプリケーションパフォーマンス全体に照らし合わせて見るときに非常に便利です。

キャパシティ

New Relic APM のキャパシティ分析レポートでは、アプリ内で実行中のインスタンス数と、そのインスタンスがどのくらいビジーなのかを把握することができます。この情報は、リクエストの負荷をさばくのに十分なインスタンスがアプリケーションに配置されているかどうかを分析する時に大変役立ちます。また、この情報を基に設定を微調整して、パフォーマンスを最適化することもできます。

ホストの使用

PM Host Usage (APM ホスト使用) は、特定の時間内に New Relic に接続したユニークなホストとアプリケーションをクリアに表示します。APM ホスト使用レポートでは、各ホストが使用されたアプリケーションとアカウントを、時間毎に表示します。

Deployments (デプロイ)

Deployments ダッシュボードでは、最近行ったデプロイとそのデプロイが与えたエンドユーザーへのインパクト、アプリサーバーの Apdex スコア、レスポンスタイム、スループット、エラーを一覧で表示します。情報を掘り下げて確認したり、検索と絞り込みのオプションで情報を並び替えたり、エラーを非表示したり削除できます。さらに、情報共有や保存も行えます。

Scalability (スケーラビリティ、拡張性)

New Relic APM のスケーラビリティ分析レポートは、アプリケーションのロードと比較したレスポンスタイム、データベース使用率、CPU 使用率を散布図として表示します。この情報は、アプリケーションのパフォーマンスだけでなく、アプリを拡張する際に必要となるハードウェアのスペックを分析する時に役立ちます。

SLA

SLA レポートには、1日ごと、1週間単位、1カ月単位のレポートがあります。アプリケーションの方向性を把握できるように、選択した時間枠のデータの傾向を見やすい形式で表示します。また、このレポートは csv としてダウンロードすることもできます。

チーム共有

New Relic APM は、開発・運用チームが問題解決に向けて、一丸となって共同作業しやすくなることを目指して開発されています。

メモ、コメント

レポート内にメモやコメントを追加できます。インラインで返信することで、チームメンバーとスムーズにコミュニケーションできます。

組み込み可能な コラボレーションツール (JIRA, PagerDuty, HipChat, などなど)

パフォーマンス問題に関するチケットは、お使いのチケット管理システムで直接管理しましょう。対応しているチケット管理システムは チケットシステム(英語) からご覧ください。

セキュリティ

New Relic は、クライアントがお使いのアプリケーションのパフォーマンスとセキュリティを向上させる目的で開発されてきました。New Relic は、主に以下の方法でクライアントのデータ保守に最善を尽しています。

SOC2 監査

New Relic は、セキュリティと可用性に関する SOC2 監査を無事に終了いたしました。この監査は、組織のセキュリティプロセスとコントロールを一つ一つレビューした後、承認されるものです。従って、この度監査完了の保証書が発行されたことで、New Relic のオーガナイズされたデータ管理が第3者機関である監査団体によって証明されたことは、New Relic はもちろんクライアントにとっても意味のある監査となりました。

デフォルトで安全

New Relic は、「デフォルト設定は確実に安全でなくてはならない」と考えています。クライアントは、センシティブな情報の送信を許可する時には、必ず New Relic 内の設定を変更・有効にする必要があります。意図しない情報を間違ってうっかりと露出することがないよう、デフォルトは安全な設定になっています。

変更可能な選べるセキュリティ

アプリケーションでは機密データや個人情報を含むデータを扱うことも多いため、何のデータが New Relic に送信されているのか不安に思うこともあると思います。そこで New Relic では、センシティブなデータのうちどれが New Relic に送信されるのか、クライアントが 100% コントロールできるようになっています。

セキュアなデータセンター

New Relic を実行し、クライアントのデータが保存されているインフラは、Tier III の SSAE-16 認証のデータセンター内にあります。クライアントのデータは、そこに定期的にバックアップされるようになっています。

常時モニタリング

New Relic は内部のサービスとサードパーティサービスの両方を採用し、ネットワークとアプリケーションのセキュリティスキャンを常時実行しています。そのため、アプリケーションとサーバーが確実に保護されていることを常に確認しています。

コンプライアンス優位性

New Relic は、PCI、HIPAA、SOX など、規則の厳格な環境でも安全に操作できるよう設定することが可能です。さらに、EU セーフサーバーおよび TRUSTe 認定のアプリケーションとなっています。