Collecte des journaux
Présentation du mécanisme de journalisation
Le tableau suivant présente un aperçu du mécanisme de journalisation pour le VDA Linux.
| Module de journalisation | Format du nom de fichier journal | Exemple de nom de fichier journal | Portée de la journalisation | Taille maximale d’un fichier | Seuil de rotation (par défaut) | Configuration |
|---|---|---|---|---|---|---|
| HDX | hdx.log[.n] | hdx.log, hdx.log.1 | Graphiques, connexion, audio, clavier, souris | 200 Mio | 1 actuel, 2 anciens | Configurable via l’utilitaire setlog |
| Jproxy | jproxy.log[.n.log] | jproxy.log, jproxy.log.1.log | Enregistrement VDA, authentification utilisateur | 20 Mio | 1 actuel, 10 anciens | Configurable via l’utilitaire setlog ou /etc/xdl/log4j2.xml |
| VDA | vda.AAAA-MM-JJ.hh.mm.ss.log | vda.2024-05-06.20.18.40.log | Enregistrement VDA | 50 Mio | 1 actuel, 1 ancien | Configurable via l’utilitaire setlog ou /etc/xdl/brokeragent.conf |
Remarque :
- Le premier fichier journal n’a pas de numéro dans son nom, et les fichiers suivants sont numérotés avec « .n » où « n » représente le numéro du fichier. Par exemple, « hdx.log » est le premier fichier journal HDX et « hdx.log.1 » est le second.
- La taille maximale d’un seul fichier journal est mesurée en mébioctets (Mio).
- Un fichier journal en cours de génération et n’ayant pas encore atteint la taille maximale pour un seul fichier est appelé un fichier journal « actuel ». Lorsqu’un fichier journal « actuel » atteint la taille maximale pour un seul fichier, il est transféré et devient un « ancien » fichier journal.
- Le seuil de rotation est configurable pour limiter le nombre d’« anciens » fichiers journaux pouvant être conservés. Les fichiers journaux les plus anciens seront supprimés lorsque la limite sera atteinte.
Configuration de la journalisation
Cette section fournit des informations supplémentaires sur la configuration de la journalisation, complétant les détails décrits dans le tableau ci-dessus.
Journalisation activée par défaut pour le VDA Linux
Le démon ctxlogd et l’utilitaire setlog sont inclus dans le package de publication du VDA Linux. Par défaut, le démon ctxlogd démarre après l’installation et la configuration du VDA Linux. Tous les autres services tracés dépendent du démon ctxlogd. Vous pouvez arrêter le démon ctxlogd si vous ne souhaitez pas que le VDA Linux soit tracé.
Configurer la journalisation VDA via /etc/xdl/brokeragent.conf
Remarque :
Si vous souhaitez configurer uniquement les niveaux de journalisation pour le VDA sans vous pencher sur d’autres paramètres de journalisation tels que la taille maximale d’un seul fichier journal, vous pouvez utiliser l’utilitaire setlog décrit plus loin dans cet article. Sinon, utilisez /etc/xdl/brokeragent.conf.
Le fichier /etc/xdl/brokeragent.conf sur le VDA est disponible pour configurer la journalisation VDA. Par exemple :

Configurer la journalisation Jproxy via /etc/xdl/log4j2.xml
Remarque :
Si vous souhaitez configurer uniquement les niveaux de journalisation pour Jproxy sans vous pencher sur d’autres paramètres de journalisation tels que la taille maximale d’un seul fichier journal, vous pouvez utiliser l’utilitaire setlog décrit plus loin dans cet article. Sinon, utilisez /etc/xdl/log4j2.xml.
Voici un exemple de configuration de la journalisation Jproxy via /etc/xdl/log4j2.xml, dont le paramètre SizeBasedTriggeringPolicy spécifie la taille maximale d’un seul fichier journal Jproxy et le paramètre DefaultRollerStrategy définit le nombre total de fichiers journaux Jproxy pouvant être conservés.

Configurer la journalisation HDX™ via l’utilitaire setlog
L’utilitaire setlog se trouve sous le chemin /opt/Citrix/VDA/bin/. Seul l’utilisateur root a le privilège de l’exécuter. Vous pouvez utiliser l’interface graphique ou exécuter des commandes pour afficher et modifier vos options de configuration, y compris les valeurs (chemin du fichier journal, limite de taille d’un seul fichier et seuil de rotation) et les niveaux de journalisation. Exécutez la commande suivante pour obtenir de l’aide sur l’utilitaire setlog :
setlog help
<!--NeedCopy-->
Valeurs
Par défaut, les journaux HDX sont enregistrés sous /var/log/xdl/hdx.log, la limite de taille pour un seul fichier journal HDX est de 200 Mio, et vous pouvez enregistrer jusqu’à deux « anciens » fichiers journaux HDX sous /var/log/xdl/hdx.log.
Pour afficher toutes les valeurs setlog actuelles, exécutez la commande suivante :
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-->
Pour afficher ou définir une seule valeur setlog, exécutez la commande suivante :
setlog value <name> [<value>]
<!--NeedCopy-->
Par exemple :
setlog value log_size 100
<!--NeedCopy-->
Niveaux
Par défaut, les niveaux de journalisation sont définis sur info (insensible à la casse).
Lorsque vous rencontrez un problème nécessitant un dépannage, nous vous recommandons de définir le niveau de journalisation sur verbose dans la plupart des scénarios. Ensuite, reproduisez le problème et collectez les journaux.
Pour définir les niveaux de journalisation (y compris Désactivé, Hérité, Trace, Verbeux, Informations, Avertissements, Erreurs et Erreurs fatales), exécutez la commande suivante :
setlog level <class> [<level>]
<!--NeedCopy-->
| Niveau de journalisation | Paramètre de commande (insensible à la casse) |
|---|---|
| Désactivé | none |
| Hérité | inherit |
| Trace | trace |
| Verbeux | verbose |
| Informations | info |
| Avertissements | warning |
| Erreurs | error |
| Erreurs fatales | fatal |
La variable <class> spécifie un composant du VDA Linux. Pour couvrir tous les composants, définissez-la sur all. Par exemple :
setlog level all error
<!--NeedCopy-->
Pour afficher toutes les classes ou composants pris en charge, exécutez la commande suivante :
setlog levels
<!--NeedCopy-->
Restaurer les valeurs par défaut
Rétablir tous les niveaux et toutes les valeurs aux paramètres par défaut :
setlog default
<!--NeedCopy-->
Important :
Le service ctxlogd est configuré à l’aide du fichier /var/xdl/.ctxlog, que seuls les utilisateurs root peuvent créer. Les autres utilisateurs n’ont pas l’autorisation d’écriture sur ce fichier. Nous recommandons aux utilisateurs root de ne pas accorder l’autorisation d’écriture aux autres utilisateurs. Le non-respect de cette consigne peut entraîner une configuration arbitraire ou malveillante de ctxlogd, ce qui peut affecter les performances du serveur et, par conséquent, l’expérience utilisateur.
Collecte des journaux
Vous pouvez exécuter la commande bash /opt/Citrix/VDA/bin/xdlcollect.sh pour collecter les journaux. Le script Bash xdlcollect utilisé pour collecter les journaux est intégré au logiciel VDA Linux et se trouve sous /opt/Citrix/VDA/bin.
Une fois la collecte des journaux terminée, un fichier ZIP est généré sous /tmp/xdlcollect sur le VDA.
Dépannage
Le démon ctxlogd échoue et vous ne pouvez pas redémarrer le service ctxlogd si le fichier /var/xdl/.ctxlog est manquant (par exemple, supprimé accidentellement).
/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-->
Pour résoudre ce problème, exécutez setlog en tant qu’utilisateur root pour recréer le fichier /var/xdl/.ctxlog. Redémarrez ensuite le service ctxlogd dont dépendent les autres services.