Linux Virtual Delivery Agent

Troubleshooting

This article describes how to use XDPing to troubleshoot and how to query session metrics using the ctxsdcutil utility.

XDPing

The Linux XDPing tool is a command-line application. It automates the process of checking for common configuration issues with a Linux VDA environment.

Install the Linux XDPing tool

Running ctxsetup.sh does not install XDPing. To install XDPing, run sudo /opt/Citrix/VDA/bin/xdping. This command also creates a Python3 virtual environment that is required for XDPing. If this command fails to create a Python3 virtual environment, create it manually following the instructions at Create a Python3 virtual environment.

To address SSL connection errors that you might encounter when using the pip tool, consider adding the following trusted hosts to the /etc/pip.conf file:

[global]
trusted-host =
pypi.org
files.pythonhosted.org

Tasks that can be done with XDPing

XDPing comes with the single executable named xdping that is run from the command shell.

The following table describes the various tasks that can be done with the corresponding XDPing commands:

Task XDPing Command Remarks
To display the command-line options sudo /opt/Citrix/VDA/bin/xdping -h N/A
To run the full suite of tests sudo /opt/Citrix/VDA/bin/xdping (run XDPing without any command-line option) The Linux XDPing tool performs over 150 individual tests on the system. For more information, see Individual tests later in this article.
To run a VDA registration status check sudo /opt/Citrix/VDA/bin/xdping -a For more information, see Scope of registration status checks later in this article.
To back up the key data of a VDA sudo /opt/Citrix/VDA/bin/xdping -b For more information, see Backup and comparison of VDA data later in this article.
To compare the latest two copies of VDA backup data sudo /opt/Citrix/VDA/bin/xdping -diff For more information, see Backup and comparison of VDA data later in this article.
To compare two specific copies of VDA backup data **sudo /opt/Citrix/VDA/bin/xdping -diff=:** For more information, see Backup and comparison of VDA data later in this article.
To check the environment before installing the Linux VDA package sudo /opt/Citrix/VDA/bin/xdping –preflight N/A
To run specific test categories only, for example, the time, Kerberos, and database tests sudo /opt/Citrix/VDA/bin/xdping -T time,kerberos,database N/A
To probe a particular Delivery Controller **sudo /opt/Citrix/VDA/bin/xdping -d ** N/A
To display what dependencies are installed on the VDA sudo /opt/Citrix/VDA/bin/xdping –query-pkgs or sudo /opt/Citrix/VDA/bin/xdping -q N/A
To display what dependencies are installed on the VDA and save the query results in a specific path **sudo /opt/Citrix/VDA/bin/xdping -f ** or **sudo /opt/Citrix/VDA/bin/xdping –query-pkgs-to ** N/A

Individual tests

The Linux XDPing tool performs over 150 individual tests on the system, which are broadly categorized as follows:

  • Check whether Linux VDA system requirements are met.
  • Identify and display machine information including the Linux distributions.
  • Check the Linux kernel compatibility.
  • Check for any known Linux distribution issues that can impact the Linux VDA operation.
  • Check the Security-Enhanced Linux (SELinux) mode and compatibility.
  • Identify network interfaces and check network settings.
  • Check storage partitioning and available disk space.
  • Check machine host and domain name configuration.
  • Check DNS configuration and perform lookup tests.
  • Identify underlying hypervisors and check virtual machine configuration. Support for:
    • XenServer (formerly Citrix Hypervisor)
    • Microsoft HyperV
    • VMware vSphere
  • Check time settings and check whether network time synchronization is operational.
  • Check whether the PostgreSQL service is properly configured and operational.
  • Check whether SQLite is properly configured and operational.
  • Check whether the firewall is enabled and the required ports are open.
  • Check Kerberos configuration and perform authentication tests.
  • Check the LDAP search environment for the group policy service engine.
  • Check whether Active Directory integration is set up properly and the current machine is joined to the domain. Support for:
    • Samba Winbind
    • Dell Quest Authentication Services
    • Centrify DirectControl
    • SSSD
  • Check the integrity of the Linux computer object in the Active Directory.
  • Check Pluggable Authentication Module (PAM) configuration.
  • Check the core dump pattern.
  • Check whether packages required by the Linux VDA are installed.
  • Identify the Linux VDA package and check the integrity of the installation.
  • Check the integrity of the PostgreSQL registry database.
  • Check whether the Linux VDA services are properly configured and operational.
  • Check the integrity of the VDA and HDX configuration.
  • Probe each configured Delivery Controller to test that the Broker Service is reachable, operational, and responsive.
  • Check whether the machine is registered with the Delivery Controller farm.
  • Check the state of each active or disconnected HDX session.
  • Scan log files for the Linux VDA related errors and warnings.
  • Check whether the version of Xorg is suitable.
  • Check whether required dependencies are installed.

Sample output

The following is a sample output from running the Kerberos test:

The first part of the Kerberos test sample output

The second part of the Kerberos test sample output

The third part of the Kerberos test sample output

Scope of VDA registration status checks

The Linux XDPing tool also provides an analysis module to help you check and analyze your VDA registration status. For a scope of registration status checks, see the following screen capture:

Registration status checks

Backup and comparison of VDA data

Starting with the Linux VDA 2305, the XDPing tool introduces a VDA backup module. This module lets you back up the key data of a VDA at any time, such as the configuration, database, and binary permission data. You can back up the key data of a VDA when it is running properly. In case the VDA fails later, back up another copy of the data and compare the two copies of data to facilitate troubleshooting. The following table describes VDA data backup and comparison with the corresponding XDPing commands:

Task XDPing Command Remarks
To back up the key data of a VDA sudo /opt/Citrix/VDA/bin/xdping -b Each time you run the backup command, a copy of the backup data is generated and saved in a directory under /var/ctxbackup. The backup data directories are named the current date and time in yyyy-mm-dd-hh_mm_ss format, for example, 2023-02-27-16_31_27. By default, the maximum number of backup data directories is 30 and the XDPing tool rotates or deletes old backup data directories when the number is exceeded. To customize the number for directory rotation, run the following command: sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Backup" -t "REG_DWORD" -v "MaxDirRotationCount" -d "0x0000005" --force
To compare the latest two copies of VDA backup data sudo /opt/Citrix/VDA/bin/xdping -diff N/A
To compare two specific copies of VDA backup data **sudo /opt/Citrix/VDA/bin/xdping -diff=:** N/A

Session metric query utilities

ctxsession

This utility provides a Windows user experience. With this utility, you can access session metrics as shown in the following screen capture:

Query session metrics through **ctxsession**

ctxqsession, ctxquser, ctxqfull, ctxquery

For instructions on how to use these utilities, run the help command, for example:

Utility help information

Users can query only their own session metrics. Only the root and ctxadm group users have permission to query other users’ session metrics.

ctxsdcutil

This utility helps to query the following metrics of all sessions or a specific session hosted on a VDA. To do so, run the /opt/Citrix/VDA/bin/ctxsdcutil -q <all | SessionID> [-c] command. The [-c] argument means to query metrics every second.

  • Input Session Bandwidth

  • Output Session Bandwidth

  • Output Session Line Speed

  • Latency - Last Recorded

  • Round Trip Time

  • Output ThinWire Bandwidth

  • Output Audio Bandwidth

  • Output Printer Bandwidth

  • Input Drive Bandwidth

  • Output Drive Bandwidth

Troubleshooting