Linux Virtual Delivery Agent

Collecte des journaux

Présentation

La collecte des journaux et la reproduction des problèmes ralentissent les diagnostics et dégradent l’expérience utilisateur. La collecte des journaux est activée par défaut pour le VDA Linux.

Configuration

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.

Le démon ctxlogd

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é.

L’utilitaire setlog

La collecte des journaux est configurée à l’aide de l’utilitaire setlog, qui se trouve sous le chemin /opt/Citrix/VDA/bin/. Seul l’utilisateur root dispose du privilège de l’exécuter. Vous pouvez utiliser l’interface graphique ou exécuter des commandes pour afficher et modifier les configurations. Exécutez la commande suivante pour obtenir de l’aide sur l’utilitaire setlog :

setlog help
<!--NeedCopy-->

Valeurs

Par défaut, le chemin de sortie des journaux est défini sur /var/log/xdl/hdx.log, la taille maximale des journaux est définie sur 200 Mo, et vous pouvez enregistrer jusqu’à deux anciens fichiers journaux sous le chemin de sortie des journaux.

Affichez les valeurs setlog actuelles :

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-->

Affichez ou définissez une seule valeur setlog :

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 avertissement (insensible à la casse).

Pour afficher les niveaux de journalisation définis pour les différents composants, exécutez la commande suivante :

setlog levels
<!--NeedCopy-->

Pour définir les niveaux de journalisation (y compris Désactivé, Hérité, 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é aucun
Hérité hériter
Verbeux verbeux
Informations info
Avertissements avertissement
Erreurs erreur
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-->

Indicateurs

Par défaut, les indicateurs sont définis comme suit :

setlog flags

DATE = true

TIME = true

NAME = true

PID = true

TID = false

SID = true

UID = false

GID = false

CLASS = false

LEVEL = false

FUNC = true

FILE = false
<!--NeedCopy-->

Affichez les indicateurs actuels :

setlog flags
<!--NeedCopy-->

Affichez ou définissez un seul indicateur de journalisation :

setlog flag <flag> [<state>]
<!--NeedCopy-->

Restaurer les valeurs par défaut

Rétablissez tous les niveaux, indicateurs et 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 pour ce fichier. Nous recommandons aux utilisateurs root de ne pas accorder d’autorisation d’écriture à d’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.

Dépannage

Le démon ctxlogd échoue et vous ne pouvez pas redémarrer le service ctxlogd lorsque 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.

Collecte des journaux