Tech Report

#17 Dynatraceの提供する「コンテキストデータ」を活用したProblem分析について

作成者: 山本 太郎|Apr 5, 2024 12:06:15 AM

コンテキストデータを活用した分析

日本では馴染みの薄い概念ですが、可視化された個々のデータが最大の価値を発揮するためには、データの背景にあるコンテキスト(意味・文脈)を考慮し、組織の意思決定の改善をするためにデータを活かすことが世界的なトレンドとなっています。

2024年に米国ラスベガスで開催された、Dynatrace社によるカンファレンス「Perform2024」では、Dynatrace社のメッセージとして、「単にデータを可視化するだけでなく、コンテキストのあるデータを一つの画面で展開し、状況に応じた判断材料となるデータ提供を実現する」ことへの強い思いが感じられました。

本記事では、「Perform2024」にて取り上げられた、DynatraceでProblem分析を行う場合のユースケースをご紹介します。


Problem分析とは?

Dynatraceは、『DavisAI』と呼ばれるDynatrace独自のAI技術を使って、「いつもと違うシステムの動き」を検知し、Problemを生成します。

Problemは、過去7日間のシステム稼働状況を元に、動的に生成されたベースラインから逸脱しているかどうかという観点で自動生成されます。(手動で設定したしきい値によるProblem検知も可能です。)

 

 

ユースケース①

1.「どこで、何が起きているか」を把握する

Dynatraceでは、『OneAgent』と呼ばれる単一のエージェントが、マルチクラウド環境で動くシステム構成要素を自動で検知し、システム全体の可視化からビジネスデータの分析までを自動化します。

以下のように、システム内部の構成要素の依存関係は自動的にマッピングされ、『DavisAI』によるデータ分析の対象になります。

 

 

 

 

DavisAI』は、システム環境内に異常があれば検知を行い、現在発生している問題については赤く表示がされ、すぐに確認を行うことができます。

 

 

 

 

 

 

 

さらに、先ほどとは異なるProblemの事例を用いて、ビジネスへの影響度の観点からシステムの問題分析を行います。

 

1-1.問題によるビジネスへの影響度を確認

エンドユーザーへの影響がある問題が検知された場合、特定のProblemを一覧から選択し、「この問題は、何人のユーザーに影響があるのか」を確認することで、問題の規模感や解決すべき問題の優先度を判断することができます。

 

 

 

 

1-2.『Root cause』で深堀分析が必要なサービスを特定

Root cause』では、異常検知された問題の根本原因であるシステム内のコンポーネントを表示します。

 

このような可視化を自動で行うことで、例えば、開発担当者が全てのログから情報を収集する手間を省くことが可能です。

 

加えて、全ての収集データから一つのコンテキストとして表示がされることで、同じ構成要素に関連したアラートの過剰通知を抑え、重要な問題に関する通知をチーム内で共有することができます。

 

 

 

 

2.「何を見直すべきか」を特定する

次に、1-2.でご紹介した『Root cause』内の『Analyze failure rate degradation』をクリックし、問題を解決するためには何を見直すべきかを確認していきます。

 

 

2-1.実際のエラーを確認

下記の『Failure analysis』分析画面により、全てのサービス、プロセス、アプリケーションに問題があった訳ではなく、特定のリクエストが失敗していたことが原因であることが確認できます。

分析画面のURLを開発チームに送って情報を共有することも可能です。

 

 

 

 

上記画面をスクロールすると、エラーに関連するログも表示がされています。

 

 

 

 

2-2.問題のある個別のリクエストを確認

2-1.でご紹介した画面の『Show related trace』をクリックし、Trace』分析画面に遷移することで、別のトランザクションがアプリケーション内の様々なレイヤーで実行された状況を確認することができます。

 

 

 

 

 

 

以上、Problem分析の一例をご紹介しました。

 

 

ユースケース②

続いて、同じ問題の繰り返しを防ぐことを目的とした、Problem分析の活用方法をご紹介します。

 

もしかしたら、Problemに出てきた問題が他の環境にも影響があるものかもしれない」という仮説を検証することを想定します。

 

 

 

 

上記画面の青枠で示された「exeption」を他の環境でも発生させないようにしたい場合、メニューから『Notebooks』を起動します。

 

DavisAI』を応用した『DavisCoPilot』を使って、質問形式で環境内に該当の「exeption」がないかを検索することが可能になる予定です。


例えば、作成した『Notebooks』をチームで共有したり、翌月に問題が改善されたかを確認したりするといった活用が考えられます。

 

 

 

※上記でご紹介した『DavisCoPilot』は、今後Dynatraceで公開予定の最新機能のため、現在はご利用いただけません。

※『DavisCoPilot』は、『Notebooks』アプリケーションで先行的に利用開始予定となっており、他のアプリケーション、分析画面にも今後適用されるようです。

※『DavisCoPilot』は、『DQL』と呼ばれるDynatrace独自のクエリ言語を書くのではなく、DavisAIに口語形式で質問ができるイメージです。

 


まとめ

本記事では、Dynatraceが提供する「コンテキストデータ」を使った、Problem分析事例をご紹介しました。
引き続き、組織の意志決定を改善するためのデータ活用を目的としたDynatraceの進化にご期待ください。