Share this post

The XenDesktop 7 Configuration Logging feature allows the administrator to record and control administrative changes made to the XenDesktop site. All Site configuration changes and administrative activities are captured to the Database and are available for reporting.

Configuration logging is one of the key features of XenDesktop 7 and administrators can use this logged content to:

  • Diagnose and troubleshoot problems after configuration changes are made; the log provides a breadcrumb trail
  • Assist change management and track configurations
  • Report administration activity

What is logged ?

Configuration changes and administrative activities (operations and activities such as power operations, session control, and messaging)  initiated by an administrator from Studio, Director, and PowerShell scripts are logged. Changes initiated via the UI or SDK are logged regardless of successful completion and not batched so service crashes will not affect the log. Examples of logged configuration changes include working with (creating, editing, deleting, assigning):

  • Machine Catalogs
  • Delivery Groups (including changing power management settings)
  • Administrator roles and scopes
  • Host resources and connections
  • Citrix policies through Studio

What is not logged ?

  • Autonomic operations such as pool management power-on of virtual machines.
  • Policy actions implemented through the Group Policy Management Console (GPMC); use Microsoft tools to view logs of those actions.
  • Changes made through the registry, direct access of the Database, or from sources other than Studio, Director, or PowerShell.
  • When the deployment is initialized, Configuration Logging becomes available when the first Configuration Logging Service instance registers with the Configuration Service. Therefore, the very early stages of configuration are not logged (for example, when the Database schema is obtained and applied, when a hypervisor is initialized).

How it works ?

Configuration Logging uses a PowerShell 2.0 SDK and the Configuration Logging Service. The Configuration Logging Service runs on every Controller in the Site. If one Controller fails, the service on another Controller automatically handles logging requests. Access to Configuration Logging is controlled through Delegated Administration, with the Edit Logging Preferences and View Configuration Logs permissions. Configuration logs are localized when they are created, it means that a log created in English will be read in English, regardless of the locale of the reader.


You set Configuration Logging preferences, display configuration logs, and generate HTML and CSV reports from Citrix Studio. You can filter configuration log displays by date ranges and by full text search results. Mandatory logging, when enabled, prevents configuration changes from being made unless they can be logged. With appropriate permission, you can delete entries from the configuration log. You cannot use the Configuration Logging feature to edit log content.

The Configuration Logging feature is also used by XenDesktop Director that provides UI notifications of configuration change events to the administrator without needing to access XenDesktop Studio.

Manage Configuration Logging

By default, Configuration Logging is enabled, and mandatory logging is disabled. Configuration Logging and mandatory logging settings can be changed in XenDesktop Studio in Logging node (XenDesktop Studio -> Logging). To display the current settings click Preferences in the Actions pane as displayed in Figure 1.

 Figure 1

Figure 1

To enable or disable Configuration Logging:

  • To enable Configuration Logging, select the Enable logging radio button. This is the default setting. If the database cannot be written to, the logging information is discarded, but the operation continues.
  • To disable Configuration Logging, select the Disable logging radio button. If logging was previously enabled, existing logs remain readable with the PowerShell SDK.

To enable or disable mandatory logging:

  • To enable mandatory logging, clear the Allow changes when the database is disconnected checkbox. No configuration change or administrative activity that would normally be logged will be allowed unless it can be written in the database used for Configuration Logging.
  • To disable mandatory logging, select the Allow changes when the database is disconnected checkbox. Configuration changes and administrative activities are allowed, even if the database used for Configuration Logging cannot be accessed. This is the default setting.

The mandatory logging option is available only when Configuration Logging is enabled, that is, when the Enable Configuration Logging radio button is selected. If the Configuration Logging Service fails, and high vailability is not in use, mandatory logging is assumed. In such cases, operations that would normally be logged are not performed.

Database location

Citrix recommends to change the location of the database used for Configuration Logging after creating a Site (and the database used for the Monitoring Service, which also uses the Site Configuration Database by default).

The location should be changed for the following reasons:

  • The backup strategy for the Configuration Logging Database is likely to differ from the backup strategy for the Site Configuration Database.
  • The volume of data collected for Configuration Logging and the Monitoring Service could adversely affect the space available to the Site Configuration database.
  • It splits the single point of failure for the three databases.

When location is changed the Configuration Logging data in the previous database is not imported to the new database. Logs cannot be aggregated from both databases when retrieving logs. The first log entry in the new Configuration Logging Database will indicate that a database change occurred, but it does not identify the previous database.

To change Configuration Logging database location:

1. Create a new SQL database which will be used to store configuration logging data. Make sure that database is configured with proper collation sequence. The required collation ends with “_CI_AS_KS”. In general, it is best to use a collation which ends with “_100_CI_AS_KS”

2. Click XenDesktop Studio -> Logging -> Preferences as it is shown in Figure 1 and click Change Logging Database button. Type new database name as it is shown in Figure 2 and press OK.

 Figure 2

Figure 2

2. Click OK

 Figure 3

Figure 3

4. When database transfer is completed verify the location of Configuration Logging database used by XenDesktop site in XenDesktop Studio -> Logging -> Configuration as it is shown in Figure 4.

 Figure 4

Figure 4

The alternate method of changing the location of Configuration Logging database (as well as all other used databases ) is to use XenDesktop Studio -> Configuration -> Change Database option as it is shown in Figure 5

 Figure 5

Figure 5