最新のクラウドネイティブ アプリケーションを構築する企業は、顧客の要求を満たすために単一のサービスだけに依存するわけではありません。
たとえば、Microsoft Azure クラウドでのソリューションの開発には複数の Azure サービスが関与する可能性が高く、パフォーマンスの問題の診断と解決が困難になります。
このような状況では、分散トレーシングが便利なオプションになります。これは、分散 Azure サービスを流れるユーザー要求またはメッセージを追跡および視覚化できる方法です。
分散トレース ソリューションを使用することが有益なのはなぜですか?
一元化されたビューを取得する: 分散トレースは 、メッセージ要求をトレースし、サービスがどのように対話するかを示し、分散 Azure サービスのより全体的なビューを提供します。すべてのチームがアプリケーションの構築方法を簡単に理解し、障害を正確に特定できます。
ボトルネックをより迅速に修正する: アプリケーションに複数の Azure サービスが関与していると、問題の根本原因となっているサービスを特定することがほぼ不可能になります。その場合、分散ソリューションがエンドツーエンドの可視性を提供する機能に役立ちます。を使用すると、重大な問題を数分以内に特定して修正できます。
より重要なことに焦点を当てる: ほとんどの場合、組織はカスタム トレース ソリューションを構築しますが、これは面倒で時間がかかる可能性があります。したがって、監視とトレースを処理できる既製のソリューションを選択すると、多くの時間を節約でき、開発者は革新して重要なことに集中できるようになります。
ただし、ビジネス シナリオに完全に適合する分散トレース ツールを選択することが重要です。ここでは、複雑な Azure ソリューションのエンドツーエンド トレースを実現する際に考慮すべき上位 5 つのツールをリストします。
- サーバーレス360 BAM
- アプリケーションインサイト
- サイト24*7
- アプリのダイナミクス
- ニューレリック

サーバーレス360 BAM
Serverless360 の Business Activity Monitoring は、 Azure およびハイブリッド ソリューションの基本的なトレース機能以上の機能を運用チームに提供することを目的としています。これにより、ビジネス ユーザーは、分散型 Azure サービス全体にわたるメッセージ フローの障害を、すべて高度な方法で追跡、視覚化し、特定することができます。
セットアップも非常に簡単で、Serverless360 でメッセージ トランザクションを設計し、メッセージ追跡用のビジネス プロセスを計測します。
特徴
- 複雑な統合のさまざまな Azure サービスを流れるメッセージを視覚化し、関連付けます。
- ビジネス ソリューション内のすべてのメッセージ トランザクションを追跡することで、根本原因を特定し、メッセージ トランザクションの失敗を簡単に解決します。
- 即時対応が必要な失敗したトランザクションはすべて、別の「アクションが必要」タブに分離されます。
- 修復および再送信機能を使用すると、必要な値を変更し、再処理して再送信を成功させることができます。
- 単純なクエリを使用して、いくつかのメッセージ トランザクションからビジネス クリティカルなデータを迅速に取得します。
- リアルタイム ダッシュボードは、追跡されたデータをグラフやレポートで視覚的に表現します。
- さまざまな側面からトランザクションを監視し、しきい値の違反があった場合には、好みの通知チャネルを通じて即座にアラートを受け取ります。
- 組み込みのガバナンスおよび監査機能により Serverless360 のセキュリティが向上
すべての追跡データとメッセージの詳細は Azure SQL Database と Blob Storage に保存され、必要なときにいつでも取得できます。

アプリケーションインサイト
アプリの分析情報は、 アプリケーション パフォーマンス管理 (APM) とライブ Web アプリのプロアクティブな監視を提供する、Azure Monitors の最も人気のある機能の 1 つです。これは、問題を診断し、Web アプリのパフォーマンスを理解するのに役立つ強力なツールでもあります。
特徴:
- アプリケーションの健全性とパフォーマンスをリアルタイムで監視できるようになります。
- また、失敗した特定のリクエストの詳細をドリルダウンして例外の原因を特定することもできるため、パフォーマンスの問題のトラブルシューティングが容易になります。
- App Insights のアプリケーション マップ機能を使用すると、さまざまな Azure サービス間の関係を簡単に視覚化できます。
- App Insights を Log Analytics に関連付けると、Azure アプリケーションに関係する個々のサービスの監視データをログに記録できます。
App Insights は、アプリケーション全体ではなく、個々の Azure サービスを監視する場合には有効な選択肢となります。分散サービス全体のメッセージ フロー全体を追跡することは不可能です。これにより、以下にその機能の概要を説明する多くのサードパーティ ツールが誕生しました。

サイトは 24 時間年中無休
サイトは 24 時間年中無休で、 あるサービスから別のサービスへのメッセージ トランザクションを追跡することで、問題が発生したときはいつでもその根本原因を特定できます。 Site 24×7 の分散トレースは、アプリケーションの複数のサービスを個別に検査するのではなく、多数のサービスにわたるメッセージ トランザクションのフロー全体をマッピングします。全体として、エンドツーエンドの可視性を実現するために必要なすべての重要な機能を提供します。
特徴 :
- 分散トレースを提供するので、アプリケーションの境界を越えてコード フローを監視できます。
- このツールは、トレースを深く調査して、アプリケーション/サービスのパフォーマンスのボトルネックを発見するのに役立ちます。
- 主要業績評価指標 (KPI) に影響を与えるさまざまなサービスからのログを特定して統合します。
- KPI のベンチマークを定義し、違反した場合の是正措置を決定します。

ニューレリック
New Relic の多くの最新機能の中でも、 分散トレーシングは 、テクノロジーのさまざまなスタックから関連データを集めてシステム全体がどのように機能するかを明らかにする主要な機能の 1 つです。これはフルマネージドのクラウドネイティブ アプリケーションであるため、追加のインフラストラクチャ サポートなしでオンデマンドのスケーラビリティが得られます。
特徴:
- 分散システム全体のトレース テレメトリを 100% 観察して、運用上の負担を軽減します
- 従来のモノリス アプリとマイクロサービス ベースのアプリの場合、New Relic は標準分散トレーシングと無限トレーシングという 2 つの異なるタイプのトレースを提供します。
- これにより、OpenTelemetry、OpenCensus、Istio などのオープンソース ツールや標準など、あらゆるソースからテレメトリをトレースできます。
- Slack やその他のコラボレーション ツールでリアルタイムのアラートを取得し、詳細な分析を行うことで、異常を迅速に発見できます。

アプリのダイナミクス
App Dynamics は、幅広いクラウド ベンダーをサポートするアプリケーション パフォーマンス監視 (APM) ツールです。マイクロサービス アーキテクチャの分散トレースに関しては、非常に多くの機能を提供しており、業績に悪影響を与える前にパフォーマンスの問題を検出するのに役立ちます。
特徴:
- データベース、メッセージ バス、コンテナーなど、アプリケーションの依存関係を完全に監視できます。
- Web およびモバイル アプリケーションのメッセージ フローをリアルタイムで可視化
- フロー マップには、アプリケーション内の層、ノード、メッセージ キュー、データベースが表示され、ステータスが赤、黄、緑の異なる色で表されるメッセージ フローが強調表示されます。
- 一目でパフォーマンスの問題を診断し、根本原因を特定します
結論
上記のすべてのツールには長所と短所があるため、試してみて、ロギングとトレースのニーズに合ったものを選択することがより重要です。ただし、Azure クラウドを使用して構築されたソリューションを広範にサポートする 分散トレース ツール を特に探している場合は、エンドツーエンドのトレース機能をすべて考慮すると、 Serverless360 BAM が 第一の選択肢となるはずです。