次の方法で共有


Azure Container Appsのアスパイア ダッシュボードを使用してリアルタイム のアプリ データを読み取る

アスパイア ダッシュボードには、環境内でアプリケーションやその他のリソースがどのように実行されているかに関するライブ データが表示されます。

次の図は、アスパイア ダッシュボードによって生成されたトレース視覚化のスクリーンショットです。

[アスパイア ダッシュボード] トレース ウィンドウのスクリーンショット。

ダッシュボードに表示される情報は、次の 2 つのソースから取得されます。

  • OpenTelemetry (OTel)。アプリケーションのトレース、メトリック、ログを追跡するためのオープンソース ライブラリです。 このドキュメントでは、Aspire ダッシュボードを OTel と統合する方法について詳しく説明しています。

    • トレースは、要求のライフサイクル、つまり要求がアプリケーションのさまざまな部分の間を移動する際にどのように受信され、処理されるかを追跡します。 この情報は、ボトルネックやその他の問題を特定するのに役立ちます。
    • メトリックは、インフラストラクチャの一般的な状態とパフォーマンスのリアルタイムの測定値です。たとえば、消費される CPU リソース数や、アプリケーションが 1 秒あたりに処理するトランザクション数などです。 この情報は、アプリの応答性を理解したり、パフォーマンスに関する問題の早期警告の兆候を特定したりするのに役立ちます。
    • ログには、アプリケーションの実行中に発生するすべてのイベントとエラーが記録されます。 この情報は、問題が発生したタイミングと、関連するイベントを見つけるのに役立ちます。
  • Kubernetes API は、アプリケーションが実行されている基礎の Kubernetes ポッドとそのログに関する情報を提供します。

ダッシュボードは、不正なアクセスや変更からセキュリティで保護されています。 ダッシュボードを使用するには、ユーザーは "書き込み" 以上のアクセス許可を持っている必要があります。つまり、ユーザーは環境の共同作成者または所有者である必要があります。

ダッシュボードを有効にする

ヒント

ポータルを使用する選択肢もありますが、ダッシュボードを有効にする操作については、azd で実行することをおすすめします。 ポータルを使用して問題が発生した場合は、Container Apps GitHub リポジトリに問題を作成してください。

次の手順を使用して、既存のコンテナー アプリでアスパイア ダッシュボードを有効にすることができます。

  1. Azure ポータルに移動します。

  2. コンテナー アプリにアクセスしてください。

  3. [ 概要 ] ページで、[ Aspire ダッシュボード ] ラベルを見つけて、[ 有効化 ] を選択します。 このアクションにより、[アスパイア ダッシュボードの設定] ページが開きます。

  4. 設定ページで、 アスパイアダッシュボード ラベルの横にある [有効] チェックボックスをオンにします。 他の設定は、Aspire Dashboardではなくログ記録に関するものなので無視して構いません。

  5. コンテナー アプリの 概要 ページで、Aspire ダッシュボード ラベルを見つけます。 [有効化] リンクは、[ダッシュボードを開く] リンクに置き換えられました。 このリンクを選択します。 リンクを表示するには、[概要] ページを再度読み込む必要がある場合があります。

また、Container Apps 環境を参照し、 監視ログ オプションを選択して、アスパイア ダッシュボードの設定を見つけることもできます。

カスタム ドメインは、アスパイア ダッシュボードにアクセスするためにサポートされていません。 https://<DOTNET_COMPONENT_NAME>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io など、Azure Container Appsによって提供される既定のドメイン名を使用する必要があります。

次のコマンドを使用して、既存のコンテナー アプリ環境でアスパイア ダッシュボードを有効にすることができます。 空欄をあなたの値に置き換えてください。

az containerapp env dotnet-component create \
  --environment <ENVIRONMENT_NAME> \
  --name aspire-dashboard \
  --resource-group <RESOURCE_GROUP_NAME>

コマンドはダッシュボードの URL を返します。この URL はブラウザーで開くことができます。

カスタム ドメインは、アスパイア ダッシュボードにアクセスするためにサポートされていません。 https://<DOTNET_COMPONENT_NAME>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io など、Azure Container Appsによって提供される既定のドメイン名を使用する必要があります。

次の手順を使用して、既存のコンテナー アプリでアスパイア ダッシュボードを有効にすることができます。

dotnet new aspire-starter
azd init --location westus2
azd config set aspire.dashboard on
azd up

コマンドはダッシュボードの URL を返します。この URL はブラウザーで開くことができます。

カスタム ドメインは、アスパイア ダッシュボードにアクセスするためにサポートされていません。 https://<DOTNET_COMPONENT_NAME>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io など、Azure Container Appsによって提供される既定のドメイン名を使用する必要があります。

トラブルシューティング

ダッシュボードの有効化で問題が発生した場合は、以下の項目を参照してください。

  • ポータルからダッシュボードがアクティブ化されるまでには、最大 2 分かかる場合があります。 準備が整う前にダッシュボードに移動しようとすると、サーバーから または エラーが返されます。

  • "Misdirected Request" エラーが発生した場合は、ブラウザー ウィンドウを閉じ、数分待ってからもう一度やり直してください。

  • ダッシュボードにアクセスするとき、"要求されたリソースでユーザーを認証できませんでした" という内容の認証エラーが表示される場合があります。

    この問題は、セキュリティ グループのアクセス許可がコンテナー アプリ環境に反映されないために発生します。 この問題を解決するには、自分自身に Container Apps 環境で共同作成者または所有者ロールを明示的に割り当てるようにしてください。 この操作を行うには、以下の手順を実行します。

    • リソースに移動します:
      • Azure ポータルを開き、コンテナー アプリ環境を検索します。
    • アクセス コントロール (IAM) ブレードにアクセスする:
      • コンテナー アプリ環境の Access Control (IAM) をクリックします。
    • 既存のロールの割り当てを確認します:
      • 自分 (またはアカウント) にロールが割り当てられているかどうかを確認します。 現在、アクセス許可はセキュリティ グループを通じて伝達されないことに注意してください。
      • そうでない場合は、残りの手順に従って役割を割り当てます。
    • 明示的なロールの割り当て: - [追加][ロールの割り当ての追加] をクリックします。 - ロールの選択: 必要なアクセス レベルに応じて、共同作成者または所有者を選択します。 - ロールをユーザー アカウントに明示的に割り当てます (例: )。
    • 保存して確認する:
      • 変更を保存します。 ロールが [ロールの割り当て] セクションに表示されていることを確認します。
    • ダッシュボード アクセスを確認します:
      • Aspire ダッシュボードにアクセスしてテストします。 エラーが引き続き発生する場合は、チームにお問い合わせください。
  • カスタム ドメインは、アスパイア ダッシュボードにアクセスするためにサポートされていません。 https://<DOTNET_COMPONENT_NAMNE>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io など、Azure Container Appsによって提供される既定のドメイン名を使用する必要があります。

アスパイア ダッシュボードの概要