In this quick walkthrough we're going show you how to troubleshoot common UX issues such a long logon duration using ControlUp Advanced Monitoring for Horizon.
- Section 1: Connect to all monitored resources.
- Section 2: Focus on the ControlUp-Demo-Targets folder then the UX Dashboard in the Sessions View.
- Section 3: Review the logon duration specific metrics.
- Section 4: Run the "Analyze GOP Extensions Load Time" Script Action.
- Section 5: Run the "Analyze Logon Duration" Script Action.
Before you Begin
In order to complete this product walkthrough please make sure you have the following:
- A valid account in the VMware TestDrive environment, sign up here if you do not have one.
- TCP & UDP ports 80, 443, 8443; and if using PCoIP, both TCP & UDP 4172
- Latest Horizon Client installed, available via direct download here.
- A ControlUp user account on TestDrive. See this article for info on how to access ControlUp on TestDrive and create an account.
Here are two video recordings of the steps in the walkthrough.
SECTION 1: Connect to all monitored resources.
Right Click on the TestDrive-vmwtd.com folder in the left pane, then select "Connect" in the context menu to connect to all the monitored resources.
Section 2: Focus on the ControlUp-Demo-Targets folder then the UX Dashboard in the Sessions View.
In the left pane, right click on the upper most folder that is titled "ControlUp-Demo-Targets" and select "Focus" in the context menu.
In the central dashboard grid view, click on the "Sessions" object to view user sessions in the Horizon environment.
Under the Home menu option, click on the dropdown box on the far right labeled "Column Preset". This dropdown box allows you to select from a variety of dashboard column presets that are specific to the selected object (in this case Sessions). Select the option labeled "UX Score"
You can reorder, rearrange or change the metric values in any dashboard column preset. You can also sort AND\OR group by any metric. Read this Knowledgebase article to learn more about Column Presets.
Click and drag the scroll bar at the bottom of the screen to the left until the "Stress Level" metric is next to the User column.
Section 3: Review the logon duration specific metrics.
There are several logon duration specific metrics in the ControlUp Real Time Console. Scroll over in the main dashboard grid view to see these metrics. Learn more about Session level metrics at this Knowledgebase article.
- Logon Duration - The interval between the end of the user’s authentication and the time when the desktop became available to the user, or when a published application was launched.
- Logon Time - Time of session establishment.
- User Logon Server - The name of the Active Directory domain controller used to authenticate the user account during logon.
- Profile Load Time - The loading time of the Windows user profile for the session.
- Group Policy Load Time - The loading time of the user logon group policies, not including logon scripts.
- Desktop Load Time - The interval between the beginning of desktop initialization and the time the desktop became available to the user. This column is only applicable to full desktop sessions, not published application launches.
- Logon Duration - Other - The time taken by logon scripts, 3rd party profile management solutions, and other components that delayed the logon process.
Section 4: Run the "Analyze GOP Extensions Load Time" Script Action.
Click on the Logon Duration Metric to sort by Logon Duration.
Click and drag the scroll bar at the bottom of the screen to the left until you see the four logon duration breakdown metrics - Profile Load Time, Group Policy Load Time, Desktop Load Time, and Logon Duration - Other.
You can see that the "Group Policy Load Time" metric is red and is a very high number. Seeing that Group Policy Load Time is high is helpful, but many Horizon environments has a large number of group policies. it would be more helpful to know exactly how long each Group Policy take to load so you can focus your troubleshooting efforts on the specific problem GPO's.
This is where ControlUp Script Actions can help. Script Actions allow you to import powershell, vb script and command line scripts into the ControlUp console. You can then invoke those scripts on multiple objects and pass parameters. (read this Knowledgebase article for more information on Script Actions).
For troubleshooting long Group Policy load time, ControlUp includes the "Analyze GPO Load Time Extensions" script action. This script action breaks down the load time for each individual GPO.
Click the three blue bars next to the GPO Load Time Metric for the first session in the dashboard. In the Virtual Expert window that pops up, click on "Analyze GPO Extension Load Time" under "Run Script Action".
After invoking the Script Action, a new window will pop up. You can see the total duration of all GPO's on the last line of the output, and you can see in the list of GPO's loaded that the Drive Mapping GPO took the most time to load.
This is a capability that you could combine with Automated Actions. You could setup an automated action runs this script automatically every time GPO Load time is above a certain threshold, and out put the results to an email. You could also have the results sent directly to a help desk ticketing system via email or, if the help desk system is exposed via powershell, you could open a ticket via an automated action that includes that powershell script as a script action.
Section 5: Run the "Analyze Logon Duration" Script Action.
Click and drag the scroll bar at the bottom of the screen to the left until you see the Logon Duration metric. Next, click the three blue bars next to the Logon direct metric for the first session in the list to invoke the Virtual Expert. Then click on "Analyze Logon Duration" under "Run Script Action".
The Analyze Logon duration script was recently updated with several new capabilities (see this blog post to learn more). Analyze Logon Duration is script action that drills down deep into every step of Horizon logon duration. The latest release of Analyze Logon Duration includes several Horizon specific capabilities. Now you can see how long your Horizon environment took to broker, authenticate, and establish a connection. ControlUp has extended the ALD script to read and interpret App Volumes and will now show how long App Volumes took to operate in your environment, giving you more visibility into the logon process and the goings-on of this powerful application virtualization product.
Other specific drill downs include -
- Tracking how long FSLogix took to load the profile and execute its shell start actions
- Tracking how long ActiveSetup took
- Tracking how long AppX packages took to load
- Tracking how long each executable in Windows Startup took to run
- Tracking how long each print driver took to map.
After clicking on "Analyze Logon Duration", a new window will pop up. No additional credentials should be required, so click Ok.
The Analyze Logon Duration script will run. This is a very long and detailed script action, so it may take 60 seconds or more to complete the full analysis. Once it is complete, you should see a window similar to the one below. In order to see all the data available, maximize the window size.
Similar to the Analyze GPO Extensions Load Time script action, this capability could be combined with Automated Actions. You could setup an automated action runs this script automatically every time Logon Duration is above a certain threshold, and out put the results to an email. You could also have the results sent directly to a help desk ticketing system via email or, if the help desk system is exposed via powershell, you could open a ticket via an automated action that includes that powershell script as a script action. Another option is to have all the profile, GPO and logon duration scripts run every time logon duration is above a certain threshold, and out put the results either to an email (to you help desk team or ticketing system) or to leverage a script action with a powershell integration to your ticketing system.