Monitoring Month - User Logon Times & Monitoring Ecosystem
We’ve all been there before…
Welcome back to the close-out post for Monitoring Month! We’ve covered the basiscs, secondary metrics and GPU workload metrics, so let’s bring it home with the classic virtual desktop metric - user logon time!
Also, I know that not everyone can build this out from scratch on their own in the Azure portal… we’ll cover some monitoring providers in the market that can help get you up and running with a monitoring program, faster.
User Logon Times
Rather than repeat the work of several other blogs and monitoring providers, I’m going to do what I usually do - focus on the practical application side of things and share some examples of things you can do to fix long or suddenly-increasing logon times.
To start, you have to understand that user logons have several different components. Microsoft does a good job summarizing those things here.
The most important part of the image above is the Logon step, where Microsoft’s KB breaks it down into 4 pieces, and I summarize them as:
Profiles: This is the time it takes to load a user’s profile. The main drivers here are user profile size, the location of the user’s profile in relation their session host server and the speed of the storage that the profile resides in.
Group Policy Objects (GPOs): The same way that admins say ‘trust me, it’s ALWAYS DNS…’, for user logon times the equivalent is that it’s ALWAYS GPO.
Shell Start: the time it takes to launch the shell (usually explorer.exe).
FSLogix: This is the time it takes to load the FSLogix container. Key drivers here include user profile size, the location of the user’s profile in relation to their session host server and the speed of the storage the FSLogix container resides in.
You may note that Profiles and FSLogix containers are strikingly similar - this is true. This means that there are now three elements to really hone in on. Then, you look at the Shell Start element - and there’s not much you can do there, or at least that’s not where you want to start.
That really only leaves two things - the user’s profile and GPO.
Investigating Increasing User Profile Times
If you are seeing a surge in User Profile times, the best thing to do is expand the time period you’re viewing (if possible). That way, you can see if this a new development or if it’s been a long-standing issue. A typical user’s profile will be between 5 and 10 GB, while a super-user’s profile may be as large as 30 GB. Naturally, the larger profile will take longer to load - that’s just the way it works. If you have a chance, you can ask that the end user offload data from their profile to OneDrive or a shared folder repository.
If this is slowly but steadily increasing, this may be actual expected behavior as the user works more and more and accumulates more and more files, etc. in their profile. However, you can always prune the User’s FSLogix profile as it grows and increases over a certain size - this prevents a profile from becoming too bloated. Note: this can be done with one of many community members’ scripts - there are many that are publicly available, so I’m not going to link to any one of them.
When reviewing a surge in this value, it could very well be that the user was travelling or - less commonly - that the organization made a business decision to change where their user profiles will reside. If the user was travelling, that makes sense that this time changed - whether that’s an increase or decrease. However, if you’re hearing about it, it’s proably because it increased - nobody calls the help desk to report great news!
Investigating Increasing GPO Times
Monitoring Providers in the Space
You can build out everything here with Azure Monitor and Log Analytics, but that takes time - and effort over time. Aside from labor, the mai n knock on this approach would be the time it takes for the data to appear in the Azure portal or your custom systems/dashboards. By the time several minutes have passed, the issue may be resolved. More likely, the user has had several extra minutes of frustration and the fact that you’re reaching out to them is no longer proactive, it’s reactive - with an angry user on the other end of the line.
That’s where the ecosystem of monitoring providers can come in and help out… here is an intentionally short recap, for the sake of brevity:
ControlUp is the 800 pound gorilla in the VDI/EUC monitoring space. Their longstanding relationship with VMware gives them deep history and insight into They monitor everyhing in this series and much, much more., making them the overall leader in the VDI/EUC monitoring ecosystem.
In addition, they have an execptional script library maintained by the community’s own Trentent Tye - aka @TrententTye on Twitter.
This is charged on a per user basis.
eG Innovations is the second of the two most visible/primary EUC monitoring tools. This also provides all of the data in this series and probably more (at least, I haven’t been able to see the solution myself to confirm, in real time Community standout Rachel Berry - aka @rhbBSE on Twitter - did a series of value-add blogs on them before eventually joining them outright.
This is charged on a per-user basis.
NetApp’s monitoring product is an open sandbox of inifinte possibilities - think Salesforce or ServiceNow - but you have to build it yourself. If you have this level of an understanding of the underlying PerfMon counters required to do, so you may wonder why you’d want to do anything more than DIY with Azure Monitor? The shortest possible description of the value add here over doing this with Azure Monitor and Log Analytis is speed - you’ll see data in real time, vs. waiting minutes for it to appear.
This is charged on a per-MU (every 2 VMs or 1 TB = 1 MU) basis.
Liquidware was one of the original AVD Partners that delivered a purpose-built monitoring. While often thought of for profile and app layering solutions, their monitoring solution delivers valuable insights into critical elements such as the ever-critical user logon time.
I believe (but cannot confirm from experience) that this is charged on a per-user basis.
Lakeside is another of the original AVD Partners that delivered a purpose-built monitoring solution. Again, the name of the game is speed, with hundreds if not thousands of data points collected every second - the most relevant of which are presented in real time.
I believe (but cannot confirm from experience) that this is charged on a per-user basis.
That’s all, folks! Hopefully the brief look at the vendors has inspired you to do some research and kick off a conversation about how you can get to these desired outcomes sooner vs. later! On behalf of all of us (ok, jut me…) at Desktops for Everyone, I hope you picked up a few tips and tricks over the last few posts and that you enjoyed Monitoring Month!