When troubleshooting Citrix Workspace App for Linux connection issues, in many cases you need to generate and collect Citrix Virtual Apps and Desktops logs at the VDA server level (in case of Linux VDA, see https://docs.citrix.com/en-us/linux-virtual-delivery-agent/current-release/configuration/tracing-on.html and https://support.citrix.com/article/CTX220130). When the issue points to client or local endpoint, then generating and collecting the Citrix Workspace App (CWA) for Linux client logs is mandatory.
Before starting any log collection, ensure that you are running the latest version of Citrix Workspce App for Linux client from https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html. This will ensure that all known issues from previous releases are fixed. If the CWA for Linux client is running inside a custom Linux OS image, check with the image vendor that the latest CWA client is included.
How to collect logs in Citrix Workspace App for Linux client
Execute the below steps to collect logs in Citrix Workspace App for Linux client.
- Run the /opt/Citrix/ICAClient/util/hdxcheck.sh script and find extracted results in /tmp/logfile.txt
- Then run /opt/Citrix/ICAClient/util/lurdump command and find extracted results in /tmp/Citrix_diag_[YOUR_UNIQUE_ID_GOES_HERE]
- For the ICAClient.log file collection, run the following commands:
cd /opt/Citrix/ICAClient/util (change this path to your actual Citrix Workspace App installation path)
sudo vi /root//.ICAClient/logs/ICAClient.log
./setlog (without parameters will open up a GUI window with the logging configuration parameters)
Starting with Citrix Workspace App for Linux client version 2109, two new files are added to collect log files using the collectlog.py tool.
The logcollector.ini file works with the /opt/Citrix/ICAClient/util/collectlog.py script.
When all above logs are collected, create a new Citrix Technical Support case and upload the collected files to Citrix CIS.
Log collection in custom Linux images
The Citrix Workspace App instructions provided in the previous section are applicable only in retail releases of Citrix Workspace App for Linux client. OEM vendors, for example thin client vendors and other Citrix-supported devices (as per the Citrix Ready Marketplace) can customize the Citrix Workspace App for Linux client to suit their needs for a bespoke Linux image.
In such cases, generating and collecting logs from a custom Linux image can occasionally present technical challenges, mainly because the customized images, especially in thin client devices, are to a large extent read-only images which do not persist various configuration information and files upon reboot. You will need to consult with the OEM vendor technical documentation and understand the custom logging mechanism used in this case.
Citrix Workspace App for Linux log collection in Stratodesk thin clients
One case with custom Citrix Workspace App for Linux image I have come across is that of Stratodesk thin clients. Stratodesk is one of the market leaders in providing custom Linux OS image for VDI solutions, including Citrix. In the case of Stratodesk, ensure that you consult their official documentation KB first.
The Το Citrix Workspace App ctxlogd daemon by default is configured to create the ICAClient.log file in path “/root//.ICAClient/logs/ICAClient.log”. In the case of Stratodesk thin client, this path is read-only by design so the log file cannot be saved. The path which Stratodesk allows for ICAClient.log creation is “/run/tmp/root/.ICAClient/logs/ICAClient.log”. For proper path setup, the following commands must be run as root user in the Stratodesk Linux bash (via SSH connection).
- /opt/Citrix/ICAClient-18.104.22.168/util/setlog – Note that this path is custom and dependent on the ICA Client version, so amend the command accordingly.
- The above command opens up a GUI inside the user’s Stratodesk screen in the thin client. From this GUI we need to set the /run/tmp/root/.ICAClient/logs/ICAClient.log path as output path and then click on apply changes. Also we can set the logging level to verbose to ensure that we will be receiving logs in any case for the initial testing.
- Run command “/opt/Citrix/ICAClient-22.214.171.124/util/setlog values” to confirm that the new settings have been preserved in the configuration.
- Run “kill [ctxlogd PID]” so that the ctxlogd service is stopped and started again in order to fetch latest output path changes.
- ps aux | grep ctxlogd
- kill [ctxlogd PID]
- /ICA/util/ctxlogd (to start again)
- ps aux | grep ctxlogd (to confirm it is running with a new PID)
- Now verify that after launching a new Citrix ICA session in the thin client, you can view the contents of the ICAClient.log file.