Community PowerShell Module – CTXLogging

When it comes to troubleshooting the communication between Citrix XenDesktop 7.x VDA and Controller you have to enable the logging of both components. Citrix once had a tool for this, the “Log Enabler Tool”. It seems that Citrix dropped the development on that tool as it is only supported for XenDesktop 5.x. Read about it here and here. Instead you have to edit config files manually – no one should edit config files manually. That is why I wrote the PowerShell module CTXLogging to automate the process.

Installation

You can find the module on GitHub -> Link.

First check if you have PowerShell 5 installed. PowerShell module installation with PowerShell 5 is very easy. It ships with Windows 10. But you can install it on other Windows version, too -> Download.

ctxlogging1

It’s easy for you:

Usage

The module publishes four cmdlets you can use. The first two are for the Controller, the last two for the Virtual Desktop Agent (VDA).

  1. Enable-CTXControllerLogging
  2. Disable-CTXControllerLogging
  3. Enable-CTXVDALogging
  4. Disable-CTXVDALogging

Each cmdlet has a help section where you can see the usage of the cmdlet. If you want to know how to work with “Enable-CTXControllerLogging” just type Get-Help Enable-CTXControllerLogging -Full . Have a look at the available parameters to see what you can do with each cmdlet.

The cmdlets will restart the Citrix services in order to enable or disable logging. Please test before doing it in production. Also note that no other users should be logged on.  

Examples

Result

The results are log files for each Citrix controller service or the VDA service. The default log path is C:\XDLogs but you can change that with the parameter -LogPathFolder.

ctxlogging2

ctxlogging3

 The Future

It doesn’t stop here. I’m going to add log handling for more Citrix products in the future, e.g. I’m working on the integration of Receiver logging. I will update this blog post accordingly.

Leave a Reply

Your email address will not be published. Required fields are marked *