Einrichten der „.NET “-Trace-Funktion auf Linux oder Alpine Linux
Sie können die „.NET “-Protokollierung auf Linux einrichten, indem Sie Instana AutoTrace verwenden oder die Umgebungsvariablen manuell konfigurieren. Unter .NET Core sensor 1.0.56 und höher, .NET unterstützt Tracer die automatische Host-Trace-Erfassung auf Linux -Systemen, mit Ausnahme von Containern.
Weitere Informationen zur Funktionsweise der Überwachung von „.NET “ finden Sie unter „So funktioniert die Überwachung von ‚.NET ‘“.
Vorbereitende Schritte
Um die „.NET Core “-Ablaufverfolgung auf Linux einzurichten, müssen Sie die folgenden Voraussetzungen erfüllen:
- Stellen Sie sicher, dass der „ Instana “-Agent auf dem Host-Rechner ausgeführt wird. Siehe „Voraussetzungen für die Überwachung von „.NET Core “ und „Installation des Host-Agenten“ unter Linux.
- Installieren Sie den „.NET Core “-Sensor unter 1.0.56 oder einer neueren Version.
- Informationen zum Support abrufen.
Ausführen von „.NET “-Anwendungen auf „ Linux “
Wenn Sie noch keine Erfahrung mit der Bereitstellung von „.NET “-Anwendungen auf „ Linux “ haben, befolgen Sie diese Schritte, um Ihre Anwendung einzurichten und auszuführen.
Schritt 1: Installieren Sie das „.NET “-SDK
Je nach Ihren Anforderungen können Sie das „.NET “-SDK in einer der folgenden Umgebungen installieren:
- WSL ( Windows -Subsystem für Linux ): Für Entwicklung und Fehlerbehebung
- Linux Maschine: Für Produktionsumgebungen
Um das „.NET “ SDK unter 8.0 auf Ubuntu 22.04 zu installieren, führen Sie den folgenden Befehl aus:
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y dotnet-sdk-8.0
Schritt 2: Starten Sie die Anwendung „.NET “
Sie können Ihre „.NET “-Anwendung auf eine der folgenden Arten ausführen:
Direkter Lauf:
dotnet run --project /home/username/Applications/WebAPI.Linux/WebAPI.Linux.csprojFühren Sie mit Kestrel den Befehl „ Go “ zum
PublishOrdner aus und starten Sie die DLL:cd /home/username/Publish/WebAPI.Linux dotnet WebAPI.Linux.dll
.NET -Tracing aktivieren
Aktivieren Sie die „.NET “-Protokollierung auf Linux mit einer der folgenden Methoden:
Methode 1: Automatische Nachverfolgung aktivieren
Mit Instana AutoTrace, Instana erkennt und instrumentiert automatisch Ihre .NET -Anwendung. Sie müssen keinen Code ändern.
Führen Sie die folgenden Schritte aus, um „ Instana “ unter AutoTrace, zu aktivieren:
- Starten Sie den Agenten, nachdem Sie den Host-Agenten installiert haben.
- Starten Sie Ihre „.NET “-Anwendung.
Beim Start des Erkennungsvorgangs aktiviert der Sensor automatisch die Nachverfolgung. Sie müssen das Paket „ NuGet “ nicht manuell einbinden und die Anwendung kompilieren.
Im Rahmen des Erkundungsprozesses wird die instana_dotnet_global_env.sh Datei erstellt. Diese Datei enthält die Umgebungsvariablen, die für die Ablaufverfolgung von „.NET Core “ erforderlich sind.
Um zu überprüfen, ob die Nachverfolgung funktioniert, melden Sie sich bei Ihrem „ Instana “-Dashboard an. Man kann sehen, wie sich Spuren abzeichnen.
Methode 2: manuelles Aktivieren der Ablaufverfolgung
Verwenden Sie diese Methode, wenn Sie die automatische Erkennung nicht nutzen möchten oder wenn Sie mehr Kontrolle über die Konfiguration benötigen. Bei diesem Ansatz werden „ NuGet “-Pakete zu Ihrer Anwendung hinzugefügt.
Anwendungen auf Linux aufspüren (mit Ausnahme von Alpine Linux )
Um die manuelle Ablaufverfolgung in einer auf Linux ausgeführten „.NET Core “-Anwendung zu aktivieren, führen Sie die folgenden Schritte aus:
Nachdem Sie den Host-Agenten installiert haben, installieren Sie die folgenden Pakete in Ihrer Anwendung:
Instana.Tracing.Core- Für die Architektur von „ x64 “ ( AMD64 ):
Instana.Tracing.Core.Rewriter.Linux - Für die Architektur von „ ARM64 “:
Instana.Tracing.Core.Rewriter.Glibc.Arm64
Wenn die Pakete über NuGet.org bereitgestellt werden, können Sie sie installieren, ohne die Anwendung neu kompilieren zu müssen. Verwenden Sie eine der folgenden Methoden:
nuget.exeVerfügbar: Stellen Sie die Pakete wieder her,nuget.exeohne das zu instrumentierende Projekt zu kompilieren.nuget.exeNicht verfügbar: Laden Sie die Pakete direkt herunter, entpacken Sie sie und richten Sie die Umgebungsvariablen so ein, dass sie auf die entpackten Dateien verweisen, wie im folgenden Schritt beschrieben.
Hinweis: Wählen Sie das für Ihre Systemarchitektur geeignete Rewriter-Paket aus. Sie können dasInstana.Tracing.Core.Rewriter.LinuxPaket zu Ihrem Projekt hinzufügen oder es vor der Veröffentlichung einbinden.Legen Sie die folgenden Umgebungsvariablen in der
Web.configDatei Ihrer Anwendung fest, bevor Sie den Prozess starten:DOTNET_STARTUP_HOOKS=[path-to-your-app]/Instana.Tracing.Core.dll CORECLR_ENABLE_PROFILING=1 CORECLR_PROFILER={cf0d821e-299b-5307-a3d8-b283c03916dd} CORECLR_PROFILER_PATH=[Path_to_your_app]/instana_tracing/CoreProfiler.soErsetzen Sie
[path-to-your-app]durch den tatsächlichen Pfad zu Ihrem Anwendungsverzeichnis.Wenn Ihre Anwendung in einem Container ausgeführt wird, definieren Sie die Umgebungsvariablen des Agenten so, dass der „.NET -Tracer“ weiß, wo er den Agenten finden kann, und Spans zur Laufzeit sendet:
INSTANA_AGENT_HOST=[address_where_the_agents_listens_and_is_reachable_from_inside_the_container] INSTANA_AGENT_PORT=42699Verwenden Sie einen anderen Port, falls dieser anders konfiguriert ist.
Verfolgen von Anwendungen, die auf Alpine Linux laufen
Um die Ablaufverfolgung für Anwendungen zu aktivieren, die auf Alpine Linux ausgeführt werden, führen Sie die folgenden Schritte aus:
Nachdem Sie den Host-Agenten installiert haben, installieren Sie die folgenden Pakete in Ihrer Anwendung:
Instana.Tracing.Core- Für die Architektur von „ x64 “ ( AMD64 ):
Instana.Tracing.Core.Rewriter.Alpine - Für die Architektur von „ ARM64 “:
Instana.Tracing.Core.Rewriter.Alpine.Arm64
Hinweis:- Wenn die Pakete unter NuGet.org verfügbar sind, können Sie sie – sofern vorhanden – über die
nuget.exeDatei herunterladen, ohne das Projekt kompilieren zu müssen. Alternativ können Sie diese Pakete manuell herunterladen, entpacken und anschließend die Umgebungsvariablen so einstellen, dass sie auf die entpackten Dateien verweisen, wie im folgenden Schritt beschrieben. - Wählen Sie das für Ihre Systemarchitektur geeignete Rewriter-Paket aus. Sie können das
Instana.Tracing.Core.Rewriter.WindowsPaket zu Ihrem Projekt hinzufügen oder es vor der Veröffentlichung einbinden.
Legen Sie die folgenden Umgebungsvariablen fest, bevor Sie Ihren Prozess starten:
DOTNET_STARTUP_HOOKS=[path-to-your-app]/Instana.Tracing.Core.dll CORECLR_ENABLE_PROFILING=1 CORECLR_PROFILER={cf0d821e-299b-5307-a3d8-b283c03916dd} CORECLR_PROFILER_PATH=[Path_to_your_app]/instana_tracing/CoreProfiler.soWenn Ihre Anwendung in einem Container ausgeführt wird, definieren Sie die Umgebungsvariablen des Agenten:
INSTANA_AGENT_HOST=[address_where_the_agents_listens_and_is_reachable_from_inside_the_container] INSTANA_AGENT_PORT=42699