Eigenständiges .NET.NET Aspire-Dashboard
Das .NET.NET Aspire Dashboard- bietet eine hervorragende Benutzeroberfläche zum Anzeigen von Telemetrie. Das Dashboard:
- Wird als Containerimage bereitgestellt, das mit jeder OpenTelemetry aktivierten App verwendet werden kann.
- Kann eigenständig verwendet werden, ohne die rest von .NET Aspire.
Starten des Dashboards
Das Dashboard wird mit der Befehlszeile Docker gestartet.
docker run --rm -it -d \
-p 18888:18888 \
-p 4317:18889 \
--name aspire-dashboard \
mcr.microsoft.com/dotnet/aspire-dashboard:9.0
Der oben Docker Befehl:
- Startet einen Container aus dem
mcr.microsoft.com/dotnet/aspire-dashboard:9.0
-Image. - Der Container macht zwei Ports verfügbar:
- Zuordnen des OTLP-Ports des Dashboards
18889
zum Port des Hosts4317
. Port4317
empfängt OpenTelemetry Daten aus Apps. Apps senden Daten mit OpenTelemetry Protocol (OTLP)-. - Zuordnen der Port-
18888
des Dashboards zum Port des Hosts18888
. Port18888
verfügt über die Dashboard-Benutzeroberfläche. Navigieren Sie im Browser zuhttp://localhost:18888
, um das Dashboard anzuzeigen.
- Zuordnen des OTLP-Ports des Dashboards
Anmelden beim Dashboard
Daten, die im Dashboard angezeigt werden, können vertraulich sein. Standardmäßig ist das Dashboard mit Authentifizierung gesichert, für die ein Token zum Anmelden erforderlich ist.
Wenn das Dashboard aus einem eigenständigen Container ausgeführt wird, wird das Anmeldetoken in die Containerprotokolle gedruckt. Nachdem Sie das hervorgehobene Token in die Anmeldeseite kopiert haben, wählen Sie die Schaltfläche Anmelden aus.
Trinkgeld
Um die Anmeldung zu vermeiden, können Sie die Authentifizierungsanforderung deaktivieren, indem Sie die umgebungsvariable DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS
auf true
festlegen. Zusätzliche Konfiguration ist verfügbar, siehe Dashboardkonfiguration.
Weitere Informationen zum Anmelden beim Dashboard finden Sie unter Dashboardauthentifizierung.
Erkunden des Dashboards
Das Dashboard bietet eine Benutzeroberfläche zum Anzeigen von Telemetrie. Informationen zur Telemetriefunktionalität finden Sie in der Dokumentation:
Obwohl es keine Einschränkung gibt, wo das Dashboard ausgeführt wird, ist das Dashboard als Entwicklungstool und kurzfristiges Diagnosetool konzipiert. Das Dashboard behält Telemetrie im Arbeitsspeicher bei, wodurch einige Einschränkungen entstehen:
- Telemetrie wird automatisch entfernt, wenn Telemetriegrenzwerte überschritten werden.
- Beim Neustart des Dashboards wird keine Telemetrie beibehalten.
Das Dashboard verfügt auch über Funktionen zum Anzeigen .NET.NET Aspire Ressourcen. Die Dashboardressourcenfeatures sind deaktiviert, wenn sie im eigenständigen Modus ausgeführt wird. Um die Ressourcen-UI zu aktivieren, eine Konfiguration für einen Ressourcendiensthinzufügen.
Telemetrie an das Dashboard senden
Apps senden Telemetrie über OpenTelemetry Protocol (OTLP)-an das Dashboard. Das Dashboard muss einen Port für den Empfang OpenTelemetry Daten verfügbar machen, und Apps sind so konfiguriert, dass Daten an diese Adresse gesendet werden.
Ein Docker Befehl wurde zuvor angezeigt, um das Dashboardzu starten. Er hat den Container so konfiguriert, dass OpenTelemetry Daten im Port 4317
empfangen werden. Die vollständige Adresse des OTLP-Endpunkts ist http://localhost:4317
.
Konfigurieren OpenTelemetry SDK
Apps sammeln und senden Telemetrie mithilfe OpenTelemetry SDK-ihrer Sprache.
Wichtige OpenTelemetry SDK-Optionen zum Konfigurieren:
- OTLP-Endpunkt, der der Konfiguration des Dashboards entsprechen soll, z. B.
http://localhost:4317
. - OTLP-Protokoll mit dem Dashboard, das derzeit nur das OTLP/gRPC-Protokollunterstützt. Konfigurieren Sie Anwendungen für die Verwendung des
grpc
-Protokolls.
So konfigurieren Sie Anwendungen:
- Verwenden der OpenTelemetry SDK-APIs innerhalb der Anwendung oder
- Starten Sie die App mit bekannten Umgebungsvariablen:
-
OTEL_EXPORTER_OTLP_PROTOCOL
mit dem Wertgrpc
. -
OTEL_EXPORTER_OTLP_ENDPOINT
mit dem Werthttp://localhost:4317
.
-
Probe
Ein Beispiel für die Verwendung des eigenständigen Dashboards finden Sie in der eigenständigen .NET.NET Aspire Dashboard-Beispiel-App.