チームダッシュボードの確立:主要なメトリックスを収集し可視化

New Relic Insights ダッシュボードを使用するとコラボレーションが可能になり、チームがアプリケーションとウェブサイトのパフォーマンス改善を通じてデジタルの顧客体験を改善できるようになります。また、ダッシュボードを使用すると、チームがビジネス目標に合わせて、アプリケーションのパフォーマンスのビジネス全体への影響をより理解できるようになります。

問題が発生すると、ダッシュボードのヘルプチームが、検索を管理可能なエンドポイントの数に狭め、解決までの時間を短縮するのに役立ちます。コラボレーションを推進することで摩擦のリスクが軽減され、各ステークホルダーのデータがそれぞれの権限に関連するようになります。

前提条件

このチュートリアルでは、次のことを前提としています:

詳細については、New Relicの目的およびベースラインチュートリアルを見直してください。これには、SLIやSLO、SLAについての詳細情報も含まれます。

基本的な手順

このチュートリアルで、New Relicは、チームダッシュボードから開始し、その後ビジネスパフォーマンスダッシュボードを構築することを推奨しています。チームダッシュボードを使用して、関連コンポーネントのステータスを単一の表示で提供することで、アプリケーションのサービスレベルインジケーター(SLI)とその他の主要パフォーマンス指標(KPI)の概要を可視化できます。

  • その日の作業の指針として、日々のスタンドアップでチームダッシュボードを使用します。
  • ビジネス全体についての広範な観察の真実を伝えるシングルソースとして、ビジネスパフォーマンスダッシュボードを使用します。

開発および運用チームが、本番環境で実行するサービスを追跡し、可視性を高めるべき理由の詳細については、O'Reilly DevOpsハンドブックをご覧ください。

1. SLIのダッシュボードを作成

チームダッシュボードを使用するとコラボレーションが可能になり、アプリケーションや組織のどの分野に注意が必要かについての理解を共有できます。

  1. 業務分野や部門ごとに、適宜ダッシュボードをグループ化します。
  2. 事業部門に関連する情報をカスタマイズします。
  3. 次のような質問を行います:
    • アプリケーションの所有者: アプリケーションに影響を与えるエラータイプの上位5位は何か?
    • オンライン店舗マネージャー: 「ショッピングカートを表示できない」エラーの影響を何人が受けるか?
    • エグゼクティブ: 顧客がフライトのオンライン料金と購入できるかをチェックする際の、収益へのリスクは何か? どのチャネルが影響を受けるか?
  4. 取得するメトリックスを選択した後、データエクスプローラーを使用してSLIのビューを作成し、ダッシュボードに追加します。
  5. データエクスプローラーに必要なものがない場合、自身のNRQLクエリを作成します。

たとえば、HTTPステータスコードに基づくSLIでは、次のNRQLクエリを使用します:

SELECT count(*) FROM Transaction WHERE httpResponseCode != 200
DevOpsチームダッシュボード: NRQLの例
insights.newrelic.com:HTTPステータスコードに基づくNRQLクエリの例は次のとおりです。

アプリケーションのパフォーマンスに加え、納品パイプラインの効率を測定することも重要です。完全に機能するDevOpsに対するチームの進捗の主要指標には次のものが含まれます:

  • デプロイメントの頻度: DevOps文化のある企業は、コードをより頻繁にディプロイします。
  • リードタイムの変更: どの程度迅速にチームが変更を行うかは、アジリティを測定する優れた方法です。パフォーマンスに優れたDevOpsチームのコードのコミットとディプロイの間の平均時間は1時間未満ですが、従来型のチームでは1~6か月かかります。
  • 平均修復時間(MTTR): すべての組織に欠点があります。最新のチームは、時間単位ではなく分単位で修復を行います。MTTRを正確に測定することで、ITマネージャーは、迅速な修復を可能にする人材とプロセス、テクノロジーを監視し、ダウンタイムが発生する前に問題に対処できます。

これらメトリックスの詳細については、影響の反復と測定についてのNew Relicのチュートリアルを見直してください。

最初のダッシュボードの興味深いビューを収集する際には、考えすぎないようにしてください。この最初のダッシュボードが議論の踏み台になると考えてください。

2. 最初のバージョンのダッシュボードを共有する

ビジネスとチームの主要データの一部をまとめた基本的なダッシュボードを作成した後、そのダッシュボードをチームやその他のステークホルダーと共有します。他のユーザーにフィードバックを求めると、メトリックスがないことが分かる場合があります。同時に、実行できない、または意味のないメトリックを削除することを恐れないでください。

適切に形成されたチームダッシュボードは、生産的な日々の議論とチーム全体での効率的なコラボレーションを推進するのに役立ちます。適切な議論の質問には次のものが含まれます:

  • このダッシュボードは我々にとって意味があるか?
  • 正しいものを測定しているか?
  • このデータを取得するのにどのような推定を行っているか?
  • 測定していることは実行可能か? このSLIでアラートがあったらどうするか?
  • 他の人物は、説明なしでこのダッシュボードを理解できるか?
  • CTOがこのダッシュボードを見たらどう思うか?

また、このチームダッシュボードが日々のワークフローでどのように最も役立つかを決定します。たとえば、日々のスタンドアップの間にダッシュボードをチェックし、日々の作業に再度優先順位を付ける必要があるかを確認します。

3. チームダッシュボードの作成

チームの賛同があったので、チームが同意したウィジェットのある完全なダッシュボードを構築します。アプリケーションレベルで、ダッシュボードで次の基準の両方を追跡するのが目標です:

  • アプリケーションの健全性とは何か。例:メモリ使用量やトランザクション数。
  • チームがどの程度ビジネスの目標を達成しているか。例:新規ユーザの数、ユーザーセッションの長さ、実働ユーザーの比率など。
DevOpsチームダッシュボードの例
insights.newrelic.com:アプリの健全性とチームのビジネス目標での成功の両方を示す、Insightsチームダッシュボードの例は次のとおりです。

Insightsを使用して、追跡する大半の論理データについて、多くのチャートタイプを作成できます。推奨事項:最低限、次のものが含まれます:

  • レスポンスタイム:面グラフ
  • 可用性の比率:ビルボード
  • エラー:円グラフ
  • スループット:面グラフ
  • ページ表示回数:ビルボード

アプリが特に複雑な場合、キュレート済みのアプリケーションのような体験について、一連のリンクしたチームダッシュボード(データアプリ)を作成します。完了したら、このダッシュボードを自身のチームや川上、川下のチームと適宜共有します。

4. ビジネスパフォーマンス脱すボードの作成

ビジネスパフォーマンスダッシュボードは、ユーザーがアプリをどのように体験しているのか、チームに概要を知らせます。大半のNew Relic顧客は、地理的な場所やデバイスのタイプなど異なるコホートで自身のアプリの体験がどのようなものかを知りたがっています。

DevOpsチームダッシュボード: KPIの例
insights.newrelic.com:主要パフォーマンス指標(KPI)を示すInsightsチームダッシュボードの例は次のとおりです。

多くの業界の企業は、次の主要パフォーマンス指標(KPI)がビジネスのパフォーマンスに不可欠と考えています。次のNRQLの例を使用して、ダッシュボードのウィジェットを構築します。

セッション数のNRQLクエリ

Browserのセッション数についてNRQLクエリを実行するには:

SELECT uniqueCount(session) FROM PageView
セッション期間のNRQLクエリ

Browserのセッション期間についてNRQLクエリを実行するには:

SELECT average(duration) AS 'Seconds' FROM PageView FACET session
ページビューのNRQLクエリ

BrowserのページビューについてNRQLクエリを実行するには:

SELECT count(*) AS '' FROM PageView
ページレンダリング時間のNRQLクエリ

BrowserのページレンダリングについてNRQLクエリを実行するには:

SELECT average(pageRenderingDuration) FROM PageView
変換ファネルのNRQLクエリ

ページ変換ファネルについてNRQLクエリを実行するには:

SELECT funnel(session,
     WHERE pageUrl LIKE 'https://newrelic.com//'/ AS 'Home',
     WHERE pageUrl LIKE 'https://newrelic.com/search#stq=apm&stp=1' AS 'Search',
     WHERE pageUrl LIKE 'https://docs.newrelic.com/docs/apm' AS 'Select')
FROM PageView
エラー比率のNRQLクエリ

APMのエラー比率についてNRQLクエリを実行するには:

SELECT count(*) FROM Transaction WHERE httpResponseCode !='200'
ApdexのNRQLクエリ

APMの ApdexについてNRQLクエリを実行するには:

SELECT apdex(duration, t:0.5) FROM Transaction
DOM対応のNRQLクエリ

BrowserのDOM対応についてNRQLクエリを実行するには:

SELECT average(domProcessingDuration) FROM PageView

その他のヘルプ

さらに支援が必要な場合は、これらのサポートと学習リソースを確認してください: