Recopilación de registros
Descripción general del mecanismo de registro
La siguiente tabla presenta una descripción general del mecanismo de registro para el VDA de Linux.
| Módulo de registro | Formato del nombre del archivo de registro | Ejemplo de nombre de archivo de registro | Ámbito de registro | Tamaño máximo de archivo único | Umbral de rotación (valores predeterminados) | Configuración |
|---|---|---|---|---|---|---|
| HDX | hdx.log[.n] | hdx.log, hdx.log.1 | Gráficos, inicio de sesión, audio, teclado, ratón | 200 MiB | 1 actual, 2 antiguos | Configurable mediante la utilidad setlog |
| Jproxy | jproxy.log[.n.log] | jproxy.log, jproxy.log.1.log | Registro de VDA, autenticación de usuario | 20 MiB | 1 actual, 10 antiguos | Configurable mediante la utilidad setlog o /etc/xdl/log4j2.xml |
| VDA | vda.YYYY-MM-DD.hh.mm.ss.log | vda.2024-05-06.20.18.40.log | Registro de VDA | 50 MiB | 1 actual, 1 antiguo | Configurable mediante la utilidad setlog o /etc/xdl/brokeragent.conf |
Nota:
- El primer archivo de registro no tiene un número en su nombre, y los archivos subsiguientes se numeran con “.n”, donde “n” representa el número de archivo. Por ejemplo, “hdx.log” es el primer archivo de registro HDX y “hdx.log.1” es el segundo.
- El tamaño máximo para un único archivo de registro se mide en mebibytes (MiB).
- Un archivo de registro que se está generando y aún no ha alcanzado el tamaño máximo para un único archivo se denomina archivo de registro “actual”. Cuando un archivo de registro “actual” alcanza el tamaño máximo para un único archivo, se transfiere y se convierte en un archivo de registro “antiguo”.
- El umbral de rotación es configurable para limitar el número de archivos de registro “antiguos” que se pueden conservar. Los archivos de registro más antiguos se eliminarán cuando se alcance el límite.
Configuración de registro
Esta sección proporciona información adicional sobre la configuración de registro, complementando los detalles descritos en la tabla anterior.
Registro habilitado de forma predeterminada para el VDA de Linux
El demonio ctxlogd y la utilidad setlog se incluyen en el paquete de lanzamiento del VDA de Linux. De forma predeterminada, el demonio ctxlogd se inicia después de instalar y configurar el VDA de Linux. Todos los demás servicios que se rastrean dependen del demonio ctxlogd. Puedes detener el demonio ctxlogd si no quieres mantener el VDA de Linux rastreado.
Configurar el registro del VDA mediante /etc/xdl/brokeragent.conf
Nota:
Si solo quieres configurar los niveles de registro para el registro del VDA sin profundizar en otros parámetros de registro, como el tamaño máximo para un único archivo de registro, puedes usar la utilidad setlog que se describe más adelante en este artículo. De lo contrario, usa /etc/xdl/brokeragent.conf.
El archivo /etc/xdl/brokeragent.conf en el VDA está disponible para configurar el registro del VDA. Por ejemplo:

Configurar el registro de Jproxy mediante /etc/xdl/log4j2.xml
Nota:
Si solo quieres configurar los niveles de registro para el registro de Jproxy sin profundizar en otros parámetros de registro, como el tamaño máximo para un único archivo de registro, puedes usar la utilidad setlog que se describe más adelante en este artículo. De lo contrario, usa /etc/xdl/log4j2.xml.
A continuación, se muestra un ejemplo de configuración del registro de Jproxy mediante /etc/xdl/log4j2.xml, donde el parámetro SizeBasedTriggeringPolicy especifica el tamaño máximo para un único archivo de registro de Jproxy y el parámetro DefaultRollerStrategy establece el número total de archivos de registro de Jproxy que se pueden conservar.

Configurar el registro de HDX™ mediante la utilidad setlog
La utilidad setlog reside en la ruta /opt/Citrix/VDA/bin/. Solo el usuario root tiene el privilegio de ejecutarla. Puedes usar la GUI o ejecutar comandos para ver y cambiar tus opciones de configuración, incluidos los valores (ruta del archivo de registro, límite de tamaño de archivo único y umbral de rotación) y los niveles de registro. Ejecuta el siguiente comando para obtener ayuda con la utilidad setlog:
setlog help
<!--NeedCopy-->
Valores
De forma predeterminada, los registros HDX se guardan en /var/log/xdl/hdx.log, el límite de tamaño para un único archivo de registro HDX es de 200 MiB, y puedes guardar hasta dos archivos de registro HDX “antiguos” en /var/log/xdl/hdx.log.
Para ver todos los valores actuales de setlog, ejecuta el siguiente comando:
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-->
Para ver o establecer un único valor de setlog, ejecuta el siguiente comando:
setlog value <name> [<value>]
<!--NeedCopy-->
Por ejemplo:
setlog value log_size 100
<!--NeedCopy-->
Niveles
De forma predeterminada, los niveles de registro se establecen en info (sin distinción entre mayúsculas y minúsculas).
Cuando encuentres un problema que requiera solución de problemas, te recomendamos que establezcas el nivel de registro en verbose en la mayoría de los escenarios. Después, reproduce el problema y recopila los registros.
Para establecer los niveles de registro (incluidos Deshabilitado, Heredado, Traza, Detallado, Información, Advertencias, Errores y Errores fatales), ejecuta el siguiente comando:
- setlog level <class> [<level>]
<!--NeedCopy-->
| Nivel de registro | Parámetro de comando (sin distinción entre mayúsculas y minúsculas) |
|---|---|
| Deshabilitado | none |
| Heredado | inherit |
| Traza | trace |
| Detallado | verbose |
| Información | info |
| Advertencias | warning |
| Errores | error |
| Errores fatales | fatal |
La variable <class> especifica un componente del VDA de Linux. Para cubrir todos los componentes, establécela en all. Por ejemplo:
setlog level all error
<!--NeedCopy-->
Para ver todas las clases o componentes compatibles, ejecuta el siguiente comando:
setlog levels
<!--NeedCopy-->
Restaurar valores predeterminados
Revierte todos los niveles y valores a la configuración predeterminada:
setlog default
<!--NeedCopy-->
Importante:
El servicio ctxlogd se configura mediante el archivo /var/xdl/.ctxlog, que solo los usuarios root pueden crear. Otros usuarios no tienen permiso de escritura para este archivo. Recomendamos que los usuarios root no otorguen permiso de escritura a otros usuarios. El incumplimiento puede provocar una configuración arbitraria o maliciosa de ctxlogd, lo que puede afectar el rendimiento del servidor y, por lo tanto, la experiencia del usuario.
Recopilación de registros
Puedes ejecutar el comando bash /opt/Citrix/VDA/bin/xdlcollect.sh para recopilar registros. El script Bash xdlcollect utilizado para recopilar registros está integrado en el software del VDA de Linux y se encuentra en /opt/Citrix/VDA/bin.
Una vez completada la recopilación de registros, se genera un archivo ZIP en /tmp/xdlcollect en el VDA.
Recopilación y carga de registros AOT
Descripción general
Esta función recopila registros de Always-On Tracing (AOT) de los componentes del Virtual Delivery Agent (VDA). Es compatible con:
- Solución de problemas difíciles de reproducir
- Comprobaciones diarias de estado
- Administración centralizada de registros
Los registros se transforman en eventos estructurados y se cargan en un servidor de registros centralizado para su consulta y análisis.
Configuración
Configuración de directivas de grupo
Para habilitar esta función mediante Directivas de grupo, asegúrate de que el servidor de registros esté configurado correctamente en el Delivery Controller (DDC). Los pasos son los siguientes:
- En Citrix Studio, haz clic en Configuración->Servidor de registros->Editar

- Establece la dirección y el puerto del servidor de registros para habilitar el reenvío de registros al servidor de registros

Configuración del registro local
Los registros locales tienen mayor prioridad que las directivas. Para habilitar esta función mediante el registro local, ejecuta los siguientes comandos en el VDA (reemplaza <ip> y <port> con los tuyos):
Habilitar la recopilación de datos AOT:
Establecer el punto de conexión del servidor de registros:
sudo /opt/Citrix/VDA/bin/ctxreg create \
-k "HKLM\System\CurrentControlSet\Control\Citrix\AOT" \
-t "REG_DWORD" \
-v "EnableAotDataCollection" \
-d "0x00000001" --force
sudo /opt/Citrix/VDA/bin/ctxreg create \
-k "HKLM\System\CurrentControlSet\Control\Citrix\AOT" \
-t "REG_SZ" \
-v "AotDataStoreEndpoint" \
-d "<http/https>://<fqdn-or-ip-address>:<port>" --force
<!--NeedCopy-->
Una vez que cambien las configuraciones de directiva enviadas desde Studio, o las configuraciones del registro local, el servicio ctxvector aplicará automáticamente el cambio en menos de 1 minuto. No es necesario reiniciarlo manualmente.
Autenticación TLS
Esta función admite conexiones HTTP y HTTPS al servidor de registros. Para HTTPS, instala los certificados de CA raíz en el almacén de claves del sistema Linux. El VDA solo puede establecer una conexión HTTPS correctamente después de autenticar el certificado del servidor de registros. El servidor de registros no autentica el VDA.
Solución de problemas
El demonio ctxlogd falla y no puedes reiniciar el servicio ctxlogd cuando falta el archivo /var/xdl/.ctxlog (por ejemplo, eliminado accidentalmente).
/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-->
Para solucionar este problema, ejecuta setlog como usuario root para recrear el archivo /var/xdl/.ctxlog. Luego reinicia el servicio ctxlogd del que dependen otros servicios.