Linux Virtual Delivery Agent

Protokollsammlung

Überblick über den Protokollierungsmechanismus

Die folgende Tabelle bietet einen Überblick über den Protokollierungsmechanismus für den Linux VDA.

Protokollierungsmodul Format des Protokolldateinamens Beispiel für einen Logdateinamen Umfang der Protokollierung Maximale Einzeldateigröße Rotationsschwellenwert (Standardwerte) Konfiguration
HDX hdx.log[.n] hdx.log, hdx.log.1 Grafik, Anmeldung, Audio, Tastatur, Maus 200 MiB 1 aktuell, 2 alt Konfigurierbar über das setlog-Hilfsprogramm
Jproxy jproxy.log[.n.log] jproxy.log, jproxy.log.1.log VDA-Registrierung, Benutzerauthentifizierung 20 MiB 1 aktuell, 10 alt Konfigurierbar über das setlog-Hilfsprogramm oder /etc/xdl/log4j2.xml
VDA vda.YYYY-MM-DD.hh.mm.ss.log vda.2024-05-06.20.18.40.log VDA-Registrierung 10 MiB 1 aktuell, 100 alt Konfigurierbar über das setlog-Hilfsprogramm oder /etc/xdl/brokeragent.conf

Hinweis:

  • Die erste Protokolldatei hat keine Zahl im Namen und nachfolgende Dateien werden mit “.n” nummeriert, wobei “n” für die Dateinummer steht. Beispielsweise ist “hdx.log” die erste HDX-Protokolldatei und “hdx.log.1” die zweite.
  • Die maximale Größe für eine einzelne Protokolldatei wird in Mebibyte (MiB) gemessen.
  • Eine Protokolldatei, die generiert wird und die maximale Größe für eine einzelne Datei noch nicht erreicht hat, wird als “aktuelle” Protokolldatei bezeichnet. Wenn eine “aktuelle” Protokolldatei die maximale Größe für eine einzelne Datei erreicht, wird ein Rollover durchgeführt und sie wird zu einer “alten” Protokolldatei.
  • Der Rotationsschwellenwert ist konfigurierbar, um die Anzahl der “alten” Protokolldateien zu begrenzen, die aufbewahrt werden können. Die ältesten Protokolldateien werden gelöscht, wenn das Limit erreicht ist.

Protokollierungskonfiguration

Dieser Abschnitt enthält zusätzliche Informationen zur Protokollierungskonfiguration und ergänzt die in der obigen Tabelle aufgeführten Details.

Protokollierung standardmäßig für den Linux VDA aktiviert

Der ctxlogd-Daemon und das setlog-Dienstprogramm sind nun im Linux VDA-Releasepaket enthalten. Standardmäßig wird der ctxlogd-Daemon nach der Installation und Konfiguration des Linux VDA gestartet. Alle anderen Dienste, deren Ablauf verfolgt wird, hängen vom ctxlogd-Daemon ab. Sie können den ctxlogd-Daemon anhalten, wenn Sie den Ablauf des Linux VDA nicht verfolgen möchten.

VDA-Protokollierung über /etc/xdl/brokeragent.conf konfigurieren

Hinweis:

Wenn Sie nur Protokollebenen für die VDA-Protokollierung konfigurieren möchten, ohne sich mit anderen Protokollierungsparametern wie der maximalen Größe einer einzelnen Protokolldatei zu befassen, können Sie das weiter unten in diesem Artikel beschriebene setlog-Dienstprogramm verwenden. Verwenden Sie andernfalls /etc/xdl/brokeragent.conf.

Die Datei /etc/xdl/brokeragent.conf auf dem VDA ist für die Konfiguration der VDA-Protokollierung verfügbar. Beispiel:

Die Datei /etc/xdl/brokeragent.conf

Hinweis:

Standardmäßig können maximal 100 “alte” VDA-Protokolldateien aufbewahrt werden. Passen Sie die Konfiguration entsprechend Ihrem Bedarf an.

Jproxy-Protokollierung über /etc/xdl/log4j2.xml protokollieren

Hinweis:

Wenn Sie nur Protokollebenen für die Jproxy-Protokollierung konfigurieren möchten, ohne sich mit anderen Protokollierungsparametern wie der maximalen Größe einer einzelnen Protokolldatei zu befassen, können Sie das weiter unten in diesem Artikel beschriebene setlog-Dienstprogramm verwenden. Andernfalls verwenden Sie /etc/xdl/log4j2.xml.

Im Folgenden finden Sie ein Beispiel für die Konfiguration der Jproxy-Protokollierung über /etc/xdl/log4j2.xml, wobei der Parameter SizeBasedTriggeringPolicy die maximale Größe für eine einzelne Jproxy-Protokolldatei angibt und der Parameter DefaultRollerStrategy die Gesamtzahl der Jproxy-Protokolldateien festlegt, die aufbewahrt werden können.

Jproxy-Protokollierung konfigurieren

HDX-Protokollierung über das Setlog-Hilfsprogramm konfigurieren

Das Setlog-Hilfsprogramm befindet sich unter dem Pfad /opt/citrix/vda/bin/. Nur Root-Benutzer können es ausführen. Sie können die GUI verwenden oder Befehle ausführen, um Ihre Konfigurationsoptionen einschließlich Werte (Protokolldateipfad, Größenbeschränkung für einzelne Dateien und Rotationsschwellenwert) und Protokollebenen anzuzeigen und zu ändern. Führen Sie den folgenden Befehl aus, um Hilfe zum setlog-Dienstprogramm aufzurufen:

setlog help
<!--NeedCopy-->

Werte

Standardmäßig werden HDX-Protokolle unter /var/log/xdl/hdx.log gespeichert, die Größenbeschränkung für eine einzelne HDX-Protokolldatei beträgt 200 MiB, und Sie können bis zu zwei “alte” HDX-Protokolldateien unter /var/log/xdl/hdx.log speichern.

Führen Sie den folgenden Befehl aus, um alle aktuellen setlog-Werte anzuzeigen:

setlog values

log_path (Log Output Path) = /var/log/xdl/hdx.log

log_size (Max Log Size (MiB)) = 200

log_count (Max Old Log Files) = 2
<!--NeedCopy-->

Führen Sie den folgenden Befehl aus, um einen einzelnen setlog-Wert anzuzeigen oder festzulegen:

setlog value <name> [<value>]
<!--NeedCopy-->

Beispiel:

setlog value log_size 100
<!--NeedCopy-->

Ebenen

Standardmäßig sind Protokollebenen auf info festgelegt (Groß-/Kleinschreibung wird nicht beachtet).

Wenn Sie auf ein Problem stoßen, das behoben werden muss, empfehlen wir, die Protokollebene in den meisten Szenarien auf ausführlich zu setzen. Reproduzieren Sie anschließend das Problem und sammeln Sie Protokolle.

Sie können die Protokollebenen (einschließlich Disabled, Inherited, Verbose, Information, Warnings, Errors und Fatal Errors) mit dem folgenden Befehl festlegen:

setlog level <class> [<level>]
<!--NeedCopy-->
Protokollebene Befehlsparameter (Groß-/Kleinschreibung unerheblich)
Deaktiviert none
Geerbt inherit
Tracing Trace
Ausführlich verbose
Informationen Info
Warnungen Warnung
Fehler Fehler
Schwerwiegende Fehler fatal

Mit der Variable <class> wird eine Komponente des Linux VDA angegeben. Um alle Komponenten einzubeziehen, legen Sie “all” fest. Beispiel:

setlog level all error
<!--NeedCopy-->

Führen Sie den folgenden Befehl aus, um alle unterstützten Klassen oder Komponenten anzuzeigen:

setlog levels
<!--NeedCopy-->

Standardeinstellungen wiederherstellen

Wiederherstellen der Standardeinstellungen für alle Ebenen und Werte:

setlog default
<!--NeedCopy-->

Wichtig:

Der ctxlogd-Dienst wird mit der Datei /var/xdl/.ctxlog konfiguriert, die nur von Root-Benutzern erstellt werden kann. Andere Benutzer haben keine Schreibrechte für diese Datei. Wir empfehlen Root-Benutzern, anderen Benutzern keine Schreibrechte zu geben. Die versehentliche oder mutwillige Fehlkonfiguration von ctxlogd kann sich negativ auf die Serverleistung und die Benutzererfahrung auswirken.

Protokollsammlung

Sie den Befehl bash /opt/Citrix/VDA/bin/xdlcollect.shbash ausführen, um Protokolle zu sammeln. Das xdlcollect-Bashskript zum Sammeln der Protokolle ist in die Linux VDA-Software integriert und unter /opt/Citrix/VDA/bin zu finden.

Nach Abschluss der Protokollsammlung wird eine komprimierte Protokolldatei in dem Ordner mit dem Skript generiert. Das xdlcollect-Bashskript kann fragen, ob Sie die komprimierte Protokolldatei in Citrix Insight Services (CIS) hochladen möchten. Wenn Sie zustimmen, gibt xdlcollect nach Abschluss des Uploads eine upload_ID zurück. Die komprimierte Protokolldatei wird beim Upload nicht von Ihrem lokalen Computer entfernt. Andere Benutzer können mit der upload_ID auf die Protokolldatei in CIS zugreifen.

Problembehandlung

Wenn die Datei /var/xdl/.ctxlog nicht vorhanden ist (z. B. versehentlich gelöscht), schlägt der ctxlogd-Daemon fehl und Sie können den ctxlogd-Dienst nicht neu starten.

/var/log/messages:

Apr 1 02:28:21 RH72 citrix-ctxlogd[17881]: Failed to open logging configuration file.

Apr 1 02:28:21 RH72 systemd: ctxlogd.service: main process exited, code=exited, status=1/FAILURE

Apr 1 02:28:21 RH72 systemd: Unit ctxlogd.service entered failed state.

Apr 1 02:28:21 RH72 systemd: ctxlogd.service failed.
<!--NeedCopy-->

Sie lösen das Problem, indem Sie setlog als Root-Benutzer ausführen, um die Datei /var/xdl/.ctxlog neu erstellen. Starten Sie dann den Dienst ctxlogd neu, da andere Dienste von ihm abhängen.