次の方法で共有


スタンドアロン .NET.NET Aspire ダッシュボード

.NET .NET Aspire ダッシュボード は、テレメトリを表示するための優れた UI を提供します。 The dashboard:

  • OpenTelemetry 対応アプリで使用できるコンテナー イメージとして出荷されます。
  • .NET .NET Aspireの残りの部分なしでスタンドアロンで使用できます。

スタンドアロン モードで実行されている .NET.NET Aspire ダッシュボードのスクリーンショット。

ダッシュボードを開始する

ダッシュボードは、Docker コマンド ラインを使用して開始されます。

docker run --rm -it -d \
    -p 18888:18888 \
    -p 4317:18889 \
    --name aspire-dashboard \
    mcr.microsoft.com/dotnet/aspire-dashboard:latest

上記の Docker コマンド:

  • mcr.microsoft.com/dotnet/aspire-dashboard:9.0 イメージからコンテナーを開始します。
  • コンテナーは、次の 2 つのポートを公開します。
    • ダッシュボードの OTLP ポート 18889 をホストのポート 4317にマッピングします。 ポート 4317 は、アプリから OpenTelemetry データを受信します。 アプリは、OpenTelemetry プロトコル (OTLP)を使用してデータを送信します。
    • ダッシュボードのポート 18888 をホストのポート 18888にマッピングします。 ポート 18888 にはダッシュボード UI があります。 ブラウザーで http://localhost:18888 に移動して、ダッシュボードを表示します。

ダッシュボードにログインする

ダッシュボードに表示されるデータは機密性の高い場合があります。 既定では、ダッシュボードは、ログインにトークンを必要とする認証で保護されます。

スタンドアロン コンテナーからダッシュボードを実行すると、ログイン トークンがコンテナー ログに出力されます。 The logs are displayed in the Docker Desktop user interface on the Logs tab for the aspire-dashboard container:

.NET.NET Aspire ダッシュボード コンテナー ログのスクリーンショット。

After copying the highlighted token into the login page, select the Login button.

または、 docker コマンドを使用して、ログからトークンを取得することもできます。

#!/bin/bash
loginLine=$(docker container logs aspire-dashboard | grep "login?t=")
match=$(echo "$loginLine" | sed -n 's/.*login?t=\([^[:space:]]*\).*/\1/p')
echo -n "$match" | xclip -selection clipboard
echo "$match"

Note

このスクリプトでは、システムに sed ツールと xclip ツールがインストールされている必要があります。

Tip

ログインを回避するには、ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS 環境変数を trueに設定することで、認証要件を無効にすることができます。 Additional configuration is available, see Dashboard configuration.

For more information about logging into the dashboard, see Dashboard authentication.

ダッシュボードを探索する

ダッシュボードには、テレメトリを表示するための UI が用意されています。 テレメトリ機能の詳細については、ドキュメントを参照してください。

ダッシュボードの実行場所に制限はありませんが、ダッシュボードは開発および短期的な診断ツールとして設計されています。 ダッシュボードは、いくつかの制限を作成するメモリ内のテレメトリを保持します。

  • Telemetry is automatically removed if telemetry limits are exceeded.
  • ダッシュボードを再起動しても、テレメトリは保持されません。

スタンドアロンの場合は使用できない機能

ダッシュボードには、 .NET.NET Aspire リソースを表示するための機能があります。 ダッシュボード リソース機能は、スタンドアロン モードで実行すると無効になります。 リソース UI を有効にするには、リソース サービスの構成を追加

GitHub Copilot 機能 はスタンドアロン ダッシュボードでは使用できません。 Copilot は IDE への接続を使用して GitHub Copilot と通信します。ダッシュボードがスタンドアロン モードの場合、その接続は使用できません。

ダッシュボードにテレメトリを送信する

アプリは、OpenTelemetry Protocol (OTLP)を使用してテレメトリをダッシュボードに送信します。 ダッシュボードは、OpenTelemetry データを受信するためのポートを公開する必要があり、アプリはそのアドレスにデータを送信するように構成されています。

ダッシュボードを開始 コマンドが前に表示されました。 ポート OpenTelemetryで 4317 データを受信するようにコンテナーを構成しました。 OTLP エンドポイントの完全なアドレスが http://localhost:4317

OpenTelemetry SDK の構成

アプリは、言語の SDK使用してテレメトリを収集して送信します。

構成する SDK オプション OpenTelemetry 重要:

  • OTLP エンドポイント。ダッシュボードの構成 (たとえば、http://localhost:4317) と一致する必要があります。
  • OTLP protocol, with the dashboard currently supporting only the OTLP/gRPC protocol. grpc プロトコルを使用するようにアプリケーションを構成します。

アプリケーションを構成するには:

  • アプリケーション内で OpenTelemetry SDK API を使用する、または
  • 既知の環境変数 でアプリを起動します。
    • OTEL_EXPORTER_OTLP_PROTOCOLの値を使用して grpc します。
    • OTEL_EXPORTER_OTLP_ENDPOINTの値を使用して http://localhost:4317 します。

Sample

スタンドアロン ダッシュボードの使用例については、スタンドアロン .NET.NET Aspire ダッシュボード サンプル アプリのを参照してください。

Next steps