獨立 .NET.NET Aspire 儀錶板
.NET .NET Aspire 儀錶板 提供絕佳的UI來檢視遙測。 儀錶板:
- 隨附為容器映像,可與任何已啟用 OpenTelemetry 的應用程式搭配使用。
- 可以獨立使用,而不需要 rest的 .NET Aspire。
啟動儀錶板
儀錶板會使用命令行 Docker 啟動。
docker run --rm -it -d \
-p 18888:18888 \
-p 4317:18889 \
--name aspire-dashboard \
mcr.microsoft.com/dotnet/aspire-dashboard:9.0
上述 Docker 命令:
- 從
mcr.microsoft.com/dotnet/aspire-dashboard:9.0
映像啟動容器。 - 容器會公開兩個埠:
- 將儀錶板的 OTLP 連接埠
18889
對應至主機的埠4317
。 埠4317
會從應用程式接收 OpenTelemetry 數據。 應用程式會使用 OpenTelemetry 通訊協定 (OTLP)傳送資料。 - 將儀錶板的埠
18888
對應至主機的埠18888
。 埠18888
具有儀錶板 UI。 瀏覽至瀏覽器中http://localhost:18888
以檢視儀錶板。
- 將儀錶板的 OTLP 連接埠
登入儀錶板
儀錶板中顯示的數據可能十分敏感。 根據預設,儀錶板會受到需要令牌登入的驗證所保護。
從獨立容器執行儀錶板時,登入令牌會列印至容器記錄。 將醒目提示的令牌複製到登入頁面之後,請選取 [登入] 按鈕
提示
若要避免登入,您可以將 DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS
環境變數設定為 true
來停用驗證需求。 如需其他設定,請參閱 儀錶板設定。
如需登入儀錶板的詳細資訊,請參閱 儀錶板驗證。
探索儀錶板
儀錶板提供用來檢視遙測的UI。 請參閱檔以探索遙測功能:
雖然儀錶板執行的位置沒有任何限制,但儀錶板的設計為開發和短期診斷工具。 儀錶板會保存記憶體中的遙測,這會產生一些限制:
- 如果超過 遙測限制,則會自動移除遙測。
- 當儀錶板重新啟動時,不會保存任何遙測。
儀錶板也有檢視 .NET.NET Aspire 資源的功能。 儀錶板資源功能會在獨立模式中執行時停用。 若要啟用資源 UI,為資源服務新增組態。
將遙測傳送至儀錶板
應用程式會使用 OpenTelemetry 通訊協定 (OTLP)將遙測傳送至儀錶板。 儀錶板必須公開接收 OpenTelemetry 數據的埠,且應用程式已設定為將數據傳送至該位址。
稍早會顯示 Docker 命令,以 啟動儀錶板。 它會設定容器以在埠 OpenTelemetry上接收 4317
數據。 OTLP 端點的完整位址 http://localhost:4317
。
設定 OpenTelemetry SDK
應用程式會使用 其語言 OpenTelemetry SDK來收集及傳送遙測。
要設定的重要 OpenTelemetry SDK 選項:
- OTLP 端點應該符合儀錶板的組態,例如,
http://localhost:4317
。 - OTLP 通訊協定,儀錶板目前僅支援 OTLP/gRPC 通訊協定。 將應用程式設定為使用
grpc
通訊協定。
若要設定應用程式:
- 在應用程式內使用 OpenTelemetry SDK API,或
- 使用
已知環境變數啟動應用程式: - 具有
OTEL_EXPORTER_OTLP_PROTOCOL
值grpc
。 - 具有
OTEL_EXPORTER_OTLP_ENDPOINT
值http://localhost:4317
。
- 具有
樣本
如需使用獨立儀錶板的範例,請參閱 獨立 .NET.NET Aspire 儀錶板範例應用程式。