XenApp Monitoring


Overview

XenApp is Citrix's solution for application and desktop delivery, with over 100 million users worldwide. XenApp extends Microsoft Remote Desktop Sessions and applications to users through the Citrix HDX protocol, enabling secure, remote access to Windows applications and server desktops from any device, over any network.

Applications Manager helps quickly drill down to the root cause of a problem in XenApp and resolve slowness in an application running on a XenApp server. Track the performance of Broker Services, client and server sessions and diagnose issues like server overload using our Citrix XenApp monitoring solution.

Creating a new monitor

Supported versions of XenApp Server: XenApp 7.6 and 6.5

Prerequisites for adding the monitor: .NET 3.5 framework must be installed for Applications Manager versions up to 173100.

Applications Manager connect with XenApp Server and used to determine the Performance of various services and components of XenApp Server. Follow the steps given below to create a new XenApp monitor:

  1. Click on New Monitor link.
  2. Select XenApp under Virtualization category.
  3. Specify the Display Name of the XenApp Server.
  4. Enter the Host Name (Delivery Controller) or IP Address of the host where the XenApp server runs.
  5. Select the Version number from the drop-down menu.
  6. If you choose the Use Below Credentials option, then enter the credentials - UserName and Password of the XenApp Server Host Machine. UserName- Name of the User who has the permission to execute WMI Queries for the respective Versions on the following namespaces in Delivery Controller machine.
    NameSpaces For Version 7.6:
    • root\cimv2
    • root\citrix\euem
    • root\citrix\profiles\metrics
    NameSpaces For Version 6.5:
    • root\cimv2
    • root\citrix
    Password - Password of the above user who has the permissions to execute WMI Queries. If you choose the Select from credential list option, then select the respective credential from preconfigured credential list.
  7. Select Enable Event Log Monitoring if you wish to monitor event logs.
  8. Specify the Polling Interval in minutes.
  9. Choose the Monitor Group with which you want to associate the XenApp to, from the combo box (optional). You can choose multiple groups to associate your monitor.
  10. Click Add Monitor(s). This discovers the XenApp from the network and starts monitoring it.

Monitored Parameters

Go to the Monitors Category View by clicking the Monitors tab. Click on XenApp under the Virtualization Table. Displayed is the XenApp bulk configuration view distributed into three tabs:

  • Availability tab, gives the Availability history for the past 24 hours or 30 days.
  • Performance tab gives the Health Status and events for the past 24 hours or 30 days.
  • List view enables you to perform bulk admin configurations.

Click on the tabs listed below to view the corresponding metrics monitored for different versions of XenApp:

XenApp Version 7.6 XenApp Version 6.5

Monitored Parameters for XenApp Version 7.6

Performance Overview

ParameterDescription
Performance of Broker Services
Average Transaction Time (in Seconds) The time on average taken to process an XML transaction in Citrix Broker Service.
Concurrent Transactions The number of concurrent XML transactions being processed in the Broker Service.
Transactions/Sec The number of XML transactions being processed per second.
Services
Service Name The name of the service. Note that the display name and the service name (which is stored in the registry) are not always the same.
Start Mode The Start mode of the service. The different start modes are:
  • Boot - The device driver is started by the operating system loader (valid only for driver services).
  • System - The device driver started by the operating system initialization process. This value is valid only for driver services.
  • Auto - The service to be started automatically by the service control manager during system startup. Auto services are started even if a user does not log on.
  • Manual - The service to be started by the Service Control Manager when a process calls the StartService method. These services do not start unless a user logs on and starts them.
  • Disabled - The service that cannot be started until its StartMode is changed to either Auto or Manual.
Status The current status of the object. Both operational and nonoperational statuses can be defined. Operational statuses include: "OK", "Degraded", and "Pred Fail" etc. Non-operational statuses include: "Error", "Starting", "Stopping", and "Service" etc.
State The current state of the base service. Possible values are:
  • Stopped
  • Start Pending
  • Stop Pending
  • Running
  • Continue Pending
  • Pause Pending
  • Paused
  • Unknown

End User Experience

ParameterDescription
Server Session Start-Up Durations
Session ID The unique ID for each user session.
Client IP The IP address of the device connecting to a XenApp / Presentation Server.
Client Machine Name The name of a device connecting to a XenApp / Presentation Server.
Logon Client User Name The name of the user who is connecting to the XenApp / Presentation Server and accessing published application.
Credentials Authentication (in ms) The Credentials Authentication Server Duration (CASD) is the time the application server spends authenticating the user's credentials against the authentication provider, which may be Kerberos, Active Directory, or a Security Support Provider Interface.
Credentials Obtention (in ms) The Credentials Obtention Server Duration (COSD) is the time taken for the server to obtain the user credentials. Because this metric may be artificially inflated if a user fails to provide credentials in a timely manner, it is not included in the Session Start-up Server Duration (SSD).
Drive Mapping (in ms) The Drive Mapping Server Duration (DMSD) is the time needed for the server to map the user's client drives, devices and ports.
Printer Creation (in ms) The Printer Creation Server Duration (PCSD) is the time required for the server to synchronously map the user’s client printers. If the configuration is set such that printer creation is performed asynchronously, no value is recorded for PCSD as it is does not impact completion of the session start-up.
Profile Load (in ms) The Profile Load Server Duration (PLSD) is the time required for the server to load the user’s profile.
Session Creation (in ms) The Session Creation Server Duration (SCSD) is the time the server spends creating the session. This should not be confused with the overall SSD.
Session Startup (in ms) The Session Startup Server Duration (SSSD) is the high-level server-side connection start-up metric that encompasses the time XenApp takes to perform the entire start-up operation. When an application starts in a shared session, this metric is normally much smaller than when starting a new session, which involves potentially high-cost tasks such as profile loading and login script execution.
Client Session Startup Durations
Session ID The unique ID for each user session.
Client IP The IP address of the device connecting to a XenApp / Presentation Server.
Client Machine Name The name of a device connecting to a XenApp / Presentation Server.
Logon Client User Name The name of the user who is connecting to the XenApp / Presentation Server and accessing published application.
Application Name The name of the application user request to get session.
Application Enumeration (in ms) The Application Enumeration Client Duration measures the time needed to retrieve the list of applications from the Web Interface service. Application enumeration is one of the issues slowing down session start times.
Back-Up URL Client Count The BackUp URL Client Count (BUCC) is a recording of the number of back-up URL retries before a successful launch. This is the only start-up metric that is a measure of attempts, rather than time duration. If this metric has a value higher than 1, it indicates the Web Interface server is unavailable and the XenApp Plugin (formerly known as Program Neighborhood Agent) is attempting to connect to back-up Web Interface servers to launch the application.
Credentials Obtention (in ms) The Credentials Obtention Client Duration (COCD) is the time it takes to obtain user credentials. Note: COCD is only measured when the credentials are entered manually by the user. Because this metric may be artificially inflated if a user fails to provide credentials in a timely manner, it is subtracted from the Startup Client Duration (SCD). This consideration is especially important if the metric is to be used for threshold alerting.
Configuration File Download (in ms) The Configuration File Download Client Duration (CFDCD) is the time it takes to get the configuration file from the XML server.
ICA File Download (in ms) The ICA File Download Duration (IFDCD) is the time it takes for the plugin (client) to download the ICA file from the server. Note: The overall process involved in downloading the ICA file is:
  • The user clicks on application icon.
  • The user’s browser requests the Web Interface launch page.
  • The Web Interface launch page receives the request and starts to process the launch, communicating with XenApp server and potentially other components such as Secure Ticket Authority (STA).
  • The Web Interface generates ICA file data.
  • The Web Interface sends the ICA file data back to the user’s browser.
  • The browser passes ICA file data to the plugin (client). IFDCD metrics represents the time it takes for the complete process (step 1 to 6). Metric stops counting time when the client receives the ICA file data.
Launch Page Web Server (in ms) The Launch Page Web Server Duration (LPWD) metric is only used when Web Interface is the application launch mechanism. If LPWD is slow, there is a bottleneck on the Web Interface server.Process under this:
  • 1. The Web Interface launch page receives the request and starts to process the launch, communicating with XenApp server and potentially other components such as Secure Ticket Authority (STA).
  • 2. The Web Interface generates ICA file data.
Session Look-Up (in ms) The Session Look Up Client Duration (SLCD) represents the time it takes to query every session to host the requested published application. The check is performed on the client to determine whether an existing session can handle the application launch request. The method used depends on whether the session is new or shared.
Session Creation (in ms) The Session Creation Client Duration (SCCD) is the time it takes to create a new session, from the moment wfica32.exe is launched to when the connection is established.
Startup Client (in ms) The Startup Client Duration (SCD) is a high-level client connection startup metric. It starts as close as possible to the time of the request (mouse click) and ends when the ICA connection between the client device and server running the XenApp / Presentation Server has been established. In the case of a shared session, this duration will normally be much smaller, as many of the setup costs associated with the creation of a new connection to the server are not incurred.

Session Performance

ParameterDescription
ICA Sessions Round Trip Metrics
SessionID The unique ID for each user session.
Client IP The IP address of the device connecting to a XenApp / Presentation Server.
Client Machine Name The name of a device connecting to a XenApp / Presentation Server.
Logon Client User Name The name of the user who is connecting to the XenApp / Presentation Server and accessing published application.
Network Latency (in Seconds) The detected network latency between the XenApp / Presentation Server Client device and the server running XenApp / Presentation Server.
Round Trip Time (in Seconds) The time interval measured at the client between the first step (user action) and the last step (graphical response displayed). This metric can be thought of as a measurement of the screen lag that a user experiences while interacting with an application hosted in a session on a server running XenApp / Presentation Server.
Input Bandwidth Available (in bits/sec) The bandwidth available on the network ( XenApp / Presentation Server Client to XenApp / Presentation Server) in bits per second.
Output Bandwidth Available (in bits/sec) The bandwidth available on the network ( XenApp / Presentation Server to XenApp / Presentation Server Client) in bits per second. A value of 0 indicates that no data is available.
Frame Send Round Trip Duration (in Seconds) The time from the start of the frame until the completion of sending frame data to the client.

Profile Server

ParameterDescription
Logon Timings
Session ID The unique ID for each user session.
Time Taken for Loading Profile (in Seconds) The profile load time for the given session. It is calculated as: Profile Loaded (Time at which the profile finished loading) - Profile Load Start (Time at which the profile started to load).
Time Taken for Logon Script Execution (in Seconds) The logon script execution duration which is displayed in the Director console. It is calculated as: LogonScriptComplete (Time at which Start-up script is completed) + LogonScriptStartup (Start time of the start-up logon)
Logoff Timings
Session ID The unique ID for each user session
Time Taken for Processing Registry The registry processing duration. The registry values for the current user are processed and saved to the profile store. It is calculated as:

Registry processing duration = Registry Processing complete (Registry processing finish time) -- Registry Processing Start (Registry processing start time).
Time Taken for File System Processing The time taken for file synchronization and file system processing. It is calculated as:

File System Processing = File System Processing complete (File synchronization and related file system processing finish time) - File System Processing Start (File synchronization and related file system processing start time).
Time Taken for CPS Processing The Cross Platform Setting (CPS) processing duration. It is calculated as:

Cross Platform Setting (CPS) processing duration = CPS Processing Complete (Cross-platform settings processing finish time) - CPS Processing Start (Cross-platform settings processing start time).
Time Taken for Logoff The logoff processing duration. It is calculated as:

Logoff processing duration = Logoff completed (Time at which logoff process finished) - Logoff start (Logoff process start time)
Diagnostics
Session ID The Unique ID for each user session.
Network Latency Users can create their own profiles in XenApp Server. Whenever a user logs in or logs out from a session, the profile server is used to authenticate the user, to check accessibility of resources for each user etc. The Network Latency metric indicates if the profile server is online or offline. Possible values are:
  • -1 = Offline, no network connection and no active sync enabled
  • 1 = Online
Disk Usage The total bytes consumed by the user of this session.
Folder Name The name of the redirected special folder or the name of the profile store folder in the profile store path.

Event Logs

ParameterDescription
Rule Name The name of the event log rule
Log File Type The Log File Type - Application, system, security, file replication service, DNS Server or directory service.
Source The Application which created the event.
Event Id The Event ID associated with the Event Log File.
Type The Event Type - Error, Warning, Information or Event of Any Type. In case of Security Events, the types would vary between Success Audit and Failure Audit.
User Name The system component or User account that was running the process which caused the event.
Description A description of the event.
Generated Time The time when the event entry was submitted.

Monitored Parameters for XenApp Version 6.5

Performance Overview

ParameterDescription
SERVER DETAILS
Server Name The name of the XenApp Server.
IP Address The IP Address of the XenApp Server.
Farm Name The name of the Farm under which XenApp Server is Configured.
Zone Name> The name of the Zone to which the XenApp Server belongs.
Zone Ranking Zone Ranking specifies the ranking of server in the Zone. Possible ranks are Most Preferred, Preferred, Default Preference, Not Preferred and Unknown.
Domain Name The Domain Name of the XenApp Server.
Server Type The type of the Server - Windows server or not.
XenApp SERVER PERFORMANCE
DataStore Connection Failure The number of minutes that the XenApp server has been disconnected from the data store. Threshold should take into account events such as reboots and scheduled maintenance.
Number of XML Threads The number of threads allocated to service Web-based sessions.
Busy XML Threads The number of XML threads currently being processed. There are 16 worker threads in the Citrix XML Service. A count of 16 or more shows that XML requests are not being processed in a timely manner.
Resolution Work Item Queue Ready Count The number of resolution work items (related to application launches) that are ready to be executed. A value above 0 indicates that requests are being queued while IMA handles other requests.
Work Item Queue Ready Count The number of work items that are ready to be executed. A value above 0 indicates that requests are being queued while IMA handles other requests. This counter should not be over 1 for an extended period of time.
Number of Zone Elections The number of zone elections. This value starts at zero each time the IMA Service starts and is incremented each time a zone election takes place.
Zone Elections Triggered The number of times a server triggers a zone election.
Active Sessions The number of active user sessions.
Disconnected Sessions The number of disconnected user sessions.
Total number of Sessions The total number of user sessions ( active and disconnected).
TRACKING XenApp GROWTH
Application Resolution Time The time in milliseconds that a resolution took to complete. This is also the time required to determine the “least-loaded” server during an application launch.
Application Enumerations/Sec The number of non-XML-based enumerations (requests for application lists) per second.
Application Resolutions/Sec The number of resolutions (applicable launch requests) per second.
Filtered Application Enumerations/Sec The number of XML-based enumerations (requests for application lists) per second
LICENSE SERVER CONNECTION FAILURE
License Server Performance The number of minutes that the XenApp server has been disconnected from the License Server.
Average License Check-In Response Time The average license check-in response time in milliseconds.
Average License Check-Out Response Time The average license check-out response time in milliseconds.
Last Recorded License Check-In Response Time The last recorded license check-in response time in milliseconds
Last Recorded License Check-Out Response Time The last recorded license check-out response time in milliseconds. A value of more than 5000 milliseconds indicates a performance issue at the license server.Â
CPU UTILIZATION
CPU Usage The percentage of CPU resource consumed by a user at a given time, averaged over a few seconds
CPU Entitlement The percentage of CPU resource that Citrix CPU Utilization Management makes available to a user at a given time
CPU Reservation The percentage of total computer CPU resource reserved for a user, should that user require it
CPU Shares The proportion of CPU resource assigned to a user
Long Term CPU Usage The percentage of CPU resource consumed by a user, averaged over a longer period than the CPU Usage counter

Services

ParameterDescription
SERVICES
Service Name Name of the Services in XenApp
Start Mode Represent the starting mode(like Auto/Manual/Disabled) of the Services
State Represent the state(like Running/Stopped/Paused) of the Services

Web Interface

ParameterDescription
WEB INTERFACE PERFORMANCE
Service Name Name of the Services in XenApp
Queued Request Count The number of requests waiting to be processed
Rejected Request Count The number of requests rejected because the request queue was full
TRACKING WEB INTERFACE GROWTH
Request Execution Time The number of milliseconds that it took to execute the most recent request
Current Request Count The current number of requests, including those that are queued, currently executing, or waiting to be written to the client

IMA and ICA (Independent Computing Architecture and Independent Management Architecture)

ParameterDescription
CITRIX IMA NETWORKING
Server Name Name of the XenApp Server with IMA Service.
Network Connections The number of active IMA network connections to other IMA servers.
Bytes Received/Sec The inbound bytes in bytes per second.
Bytes Sent/Sec The outbound bytes in bytes per second.
ICA SESSION STATS
Client Name The name of the Client connected with XenApp Server along with it's Session Name.
Average of Session's Latency The average client latency over the lifetime of a session.
Deviation in Latency The difference between the minimum and maximum measured latency values for a session.
Input Session Bandwidth (bits/sec) The bandwidth, measured in bits per second, used from client to server for a session.
Output Session Bandwidth (bits/sec) The bandwidth, measured in bits per second, used from server to client for a session.
ICA ROUND TRIP LATENCY
Median of ICA Round Trip Latency The median time of ICA roundtrip latency for all sessions on the server.

Zones and Servers

ParameterDescription
ZONE STATS
Zone Name The name of the Zone to which XenApp Server belongs.
Data Collector The one Server in a Zone is elected as the data collector for the other servers.
Number of Servers The number of XenApp servers in each Zone.
SERVERS IN ZONES
Server Name The name of the XenApp Server.
IP Address The IP Address of the XenApp Server.
Farm Name The name of the Farm under which XenApp Server is Configured.
Zone Name The name of the Zone in which XenApp Server belongs to.
Zone Ranking The ranking of server(like Most Preferred, Preferred, Default Preference, Not Preferred) in the Zone.
Domain Name The domain name to which XenApp Server belongs.

Applications

ParameterDescription
PUBLISHED APPLICATIONS
Application Name The name of the Published Application.
Application ID The Application ID is a number that uniquely identifies the application even if the application name changed.
Server Name The name of the XenApp Server in which the application get published / deployed.
Farm Name The name of the Farm in which application get published.
Permissions The value of the application Read Only flag. Values are Read Only, Read/Write
Folder Name The client's Program Neighborhood folder.
Application Status The value of the 'Enable application' flag. When you publish an application, it is enabled by default. Enabled applications are then available to the users specified when the application was published. Disabled applications are not available to users.

Sessions and Clients

ParameterDescription
SESSION DETAILS
Session ID The unique ID for each session created in XenApp Server.
Session Name The name of the Session
Session User The name of the user who is running the Session
Session State The Current state of the Session: userLoggedOn, connectedToClient, connectingToClient, shadowingOtherSession, loggedOnButNoClient, waitingForConnection, listeningForConnection, resetInProgress, downDueToError, initializing.
Client Name The session client name. The session client name is usually the client device name
Number of Applications The number of applications in Session
LogOn Time The session logon time
Connect Time The connect time of the session
Current Time The current time of the session
Last Input Time the session's last input time.
Disconnect Time The last session disconnect time. If the session is connected, the time is 0 for all the values.
ICA CLIENT DETAILS
Client Name The session client name is usually the client device name.
Client Address The network address of the client.
ICA Buffer Length The ICA buffer length of the session.

Event Log

ParameterDescription
Rule Name The name of the event log rule
Log File Type The Log File Type - Application, system, security, file replication service, DNS Server or directory service.
Source The Application which created the event.
Event Id The Event ID associated with the Event Log File.
Type The Event Type - Error, Warning, Information or Event of Any Type. In case of Security Events, the types would vary between Success Audit and Failure Audit.
User Name The system component or User account that was running the process which caused the event.
Description A description of the event.
Generated Time The time when the event entry was submitted.