Citrix Virtual Apps and Desktops

Anzeigen und Verwenden von AOT-Protokollen

Zugreifen auf Protokolle über die Director-Benutzeroberfläche

Schritt 1

  • Bearbeiten Sie die Datei StartLogServer.bat.

Die Datei StartLogServer.bat enthält alle Konfigurationsparameter, die zum Starten des AOT Log Server-Containers verwendet werden, einschließlich mehrerer Umgebungsvariablen, die den Protokollzugriff und das Verhalten steuern. Eine der wichtigsten Einstellungen ist LOCAL_DOWN_ONLY.

  • Wenn LOCAL_DOWN_ONLY=false, akzeptiert der Log Server Remote-Anfragen zur Protokollanzeige. Dies ermöglicht Citrix Director/Monitor, sich mit dem Log Server zu verbinden und AOT-Protokolle direkt in der Monitor-Benutzeroberfläche anzuzeigen.

  • Wenn LOCAL_DOWN_ONLY=true, beschränkt der Log Server den Protokollzugriff auf lokale Verbindungen. In diesem Modus müssen Sie sich direkt mit dem Log Server-Computer verbinden, um Protokolle anzuzeigen, und Citrix Director Monitor kann keine Protokolle abrufen oder anzeigen.

AOT-Bat-Datei

Schritt 2

Web Studio bietet eine dedizierte Einstellung, die es Citrix Director ermöglicht, sich mit dem AOT Log Server zu verbinden und Protokolle in der Monitor-Konsole anzuzeigen. Sobald die Web Studio-Einstellungen gespeichert sind, aktualisieren die Delivery Controller die Site-Konfiguration, und Director empfängt die Log Server-Details, einschließlich der Log Server-Adresse, des Ports und des Authentifizierungsschlüssels. Director verwendet diese Einstellungen, um eine sichere Verbindung zum Log Server herzustellen.

  • Schritt 3

  • Nach der Konfiguration:
  1. Öffnen Sie Citrix Director.
  2. Eine neue Option Protokolle erscheint im linken Navigationsbereich.
  3. Wählen Sie Protokolle aus, und Sie sehen die Seite “Erste Schritte”. Klicken Sie auf Schließen, um diese zu überspringen, da wir diese Einstellungen bereits vorgenommen haben.
    1. Nun sehen Sie, wie Director AOT-Protokolle direkt vom Log Server abruft und anzeigt.
  • Citrix Director

Die Seite Protokolle in Director bietet eine einheitliche Ansicht von AOT-Ereignissen von Delivery Controllern, VDAs, StoreFront-Servern und anderen Citrix-Komponenten. Sie können Protokolle in Echtzeit suchen, filtern und überprüfen, um Probleme schnell zu beheben.

Freitextsuche: Oben auf der Seite “Protokolle” finden Sie eine Freitext-Suchleiste. Sie können beliebige Schlüsselwörter eingeben, um die Ergebnisse einzugrenzen. Die Suche aktualisiert die Ergebnisse sofort, sobald Sie Filter anwenden. Beispiele sind:

  • Benutzernamen
  • Maschinennamen
  • Ereignisschlüsselwörter (z. B. Registrierung, Authentifizierung, STA)
  • Transaktions-IDs
  • Fehlermeldungen oder Teilzeichenfolgen

Zeitfilter: Verwenden Sie die Zeitauswahl (z. B. Letzte 5 Minuten, Letzte 1 Stunde, Letzte 24 Stunden), um Protokolle anzuzeigen, die innerhalb eines bestimmten Zeitraums generiert wurden. Dies hilft Ihnen, Ereignisse um den genauen Zeitpunkt eines Problems schnell zu isolieren.

Kategoriefilter: Das Feld “Kategorie” ermöglicht es Ihnen, Protokolle basierend auf dem Ereignistyp oder Subsystem zu filtern. Dies hilft Ihnen, sich auf Protokolle zu konzentrieren, die sich auf Anwendungsstart, Registrierung, VDA-Konfiguration, Grafik, HDX Direct, ICA-Verbindung usw. beziehen.

Protokollklassenfilter: Der Protokollklassenfilter gruppiert Protokolle nach Schweregrad oder Ereignistyp. Dies ermöglicht es Ihnen, sich bei der Fehlerbehebung nur auf Fehler oder wichtige Ereignisse zu konzentrieren. Gängige Klassen sind:

  • Informationen
  • Warnung
  • Fehler
  • Ausfall

Hostname-Filter: Der Hostname-Filter ermöglicht es Ihnen, eine bestimmte Maschine auszuwählen – wie einen VDA, Delivery Controller, CWA oder StoreFront-Server. Dies ist nützlich, wenn Sie Protokolle für einen einzelnen Endpunkt oder eine VM detailliert untersuchen möchten, anstatt die gesamte Bereitstellung zu durchsuchen.

Dieser zentralisierte Zugriff optimiert die Fehlerbehebung, indem er einen schnellen Protokollabruf und eine schnelle Analyse von einer einzigen Konsole aus ermöglicht. Erfahren Sie mehr über die Voraussetzungen und den Einstieg in Director – Protokolle.

Zugreifen auf Protokolle über den Log Server

Der folgende Inhalt beschreibt das Generieren des AuthKeys. Um den Zugriff auf Protokolle zu ermöglichen, muss der Benutzer:

  1. Das Skript StartLogServer.bat ändern: LOCAL_DOWN_ONLY=false
  2. Den AuthKey generieren

Um Ihre Protokolle sicher zu halten, benötigen Sie einen AuthKey, bevor Sie sie herunterladen können. So gehen Sie vor:

  1. Holen Sie sich Ihren AuthKey – Verwenden Sie Ihren eigenen Rollennamen/Namen, um ihn zu generieren.
  2. Lokal ausführen – Skripte können nur auf dem Computer ausgeführt werden, auf dem der Docker-Container installiert ist.
  3. Windows-Benutzer – Verwenden Sie die Skripte GetAuthKey.bat anstelle von Shell-Skripten.
  4. Protokolle herunterladen – Nach der Authentifizierung können Sie Ihre Protokolle sicher abrufen.

AuthKey generieren

Für Linux

./GetAuthKey.sh role-name
{"key":"ebac9b7726cb4be597c92c6769134d25","role":"role-name","status":"DONE"}
<!--NeedCopy-->

Für Windows

GetAuthKey.bat role-name
{"key":"ebac9b7726cb4be597c92c6769134d25","role":"role-name","status":"DONE"}
<!--NeedCopy-->

Speichern Sie den Schlüssel: ebac9b7726cb4be597c92c6769134d25 selbst. Es ist die einzige Möglichkeit, den Schlüssel zu erhalten.

Auflisten der Maschinennamen, die ihre AOT-Protokolle bereits an den Logserver gesendet haben

Der Parameter ist der Schlüssel, der von GetAuthKey.sh abgerufen wird.

Für Linux

./ListMachines.sh ebac9b7726cb4be597c92c6769134d25
{"machines":["MachineName"]}
<!--NeedCopy-->

Leere Maschinen bedeuten, dass keine Protokolle vorhanden sind.

Für Windows

ListMachines.bat ebac9b7726cb4be597c92c6769134d25
{"machines":["MachineName"]}
<!--NeedCopy-->

Für Windows PowerShell, wenn der LogServer mit “-e LOCAL_DOWN_ONLY=false” gestartet wird:

Invoke-WebRequest -Uri "https://logserver_fqdn:8443/ctxlogserver/Download/ListMachine" -Headers @{ AuthKey = "ebac9b7726cb4be597c92c6769134d25" }
<!--NeedCopy-->

Ersetzen Sie logserver_fqdn durch den tatsächlichen FQDN des Logservers und 8443 durch den tatsächlichen Port des Logservers. Ersetzen Sie https durch http, wenn im http-Modus installiert.

Leere Maschinen bedeuten, dass keine Protokolle vorhanden sind.

Protokolle nach Maschinenname und Zeitbereich herunterladen.

Die Zeit ist im UTC-Format: YYYY-mm-ddTHH:MM:SSZ.

#Usage: ./DownloadLogsByTime.sh [AuthKey] [MachineName] [StartTime|YYYY-mm-ddTHH:MM:SSZ] [EndTime|YYYY-mm-ddTHH:MM:SSZ] [OutputFile]
#Example:
<!--NeedCopy-->

Für Linux

./DownloadLogsByTime.sh ebac9b7726cb4be597c92c6769134d25 MachineName 2025-01-01T00:00:00Z 2025-01-02T00:00:00Z logs.csv
<!--NeedCopy-->

Für Windows

DownloadLogsByTime.bat ebac9b7726cb4be597c92c6769134d25 MachineName 2025-01-01T00:00:00Z 2025-01-02T00:00:00Z logs.csv
<!--NeedCopy-->

Für Windows PowerShell, wenn der LogServer mit “-e LOCAL_DOWN_ONLY=false” gestartet wird:

Invoke-WebRequest -Uri "https://logserver_fqdn:8443/ctxlogserver/Download/TimeRange?start=2025-01-01T00:00:00Z&end=2025-01-02T00:00:00Z" -Headers @{ AuthKey = "ebac9b7726cb4be597c92c6769134d25" } -OutFile logs.csv
<!--NeedCopy-->

Protokolle nach Schlüsselwort(en) filtern und herunterladen. Die Zeit ist im UTC-Format

Hinweis:

  • Ein Schlüsselwort kann ein einzelnes Wort oder eine Kombination von Wörtern sein.
  • Schlüsselwörter können überall innerhalb der Protokollnachricht übereinstimmen.
  • Eine Transaktions-ID kann auch als Schlüsselwort verwendet werden.
#Usage: ./DownloadLogsByWords.sh [AuthKey] [StartTime|YYYY-mm-ddTHH:MM:SSZ] [EndTime|YYYY-mm-ddTHH:MM:SSZ] [SearchWords] [OutputFile]
#Example:
<!--NeedCopy-->

Für Linux

./DownloadLogsByWords.sh authkey 2025-01-01T00:00:00.000Z 2025-12-31T23:59:59.999Z "session launch" logs.csv
<!--NeedCopy-->

Für Windows

DownloadLogsByWords.bat authkey 2025-01-01T00:00:00.000Z 2025-12-31T23:59:59.999Z "failed vda" logs.csv
<!--NeedCopy-->

Für Windows PowerShell, wenn der LogServer mit “-e LOCAL_DOWN_ONLY=false” gestartet wird:

Invoke-WebRequest -Uri "https://logserver_fqdn:8443/ctxlogserver/Download/SearchLog?start=2025-01-01T00:00:00Z&end=2025-01-02T00:00:00Z&words=failed vda" -Headers @{ AuthKey = "ebac9b7726cb4be597c92c6769134d25" } -OutFile logs.csv
<!--NeedCopy-->

Wörter werden durch Leerzeichen getrennt.

Anzeigen und Verwenden von AOT-Protokollen