Azure Windows Virtual Desktop and Language Packs - Detecting Host Pool and Tenant Name issue
Language packs on Windows sometimes cause some issues or strange behaviors to some applications. One problem I can reproduce is the impact of the RDAgent from Microsoft - the agent running on a WVD/AVD session host, which makes the connection to the WVD/AVD backend. If no language pack is installed (or not set as the system language), the RDAgent writes some information to the registry naming the Host Pool, Tenant, and more. You can find this data in HKLM:\SOFTWARE\Microsoft\RDMonitoringAgent
The RDAgent writes this data at least if the session host at the start:
If you have a clean Windows Virtual Machine with an installed and for the whole system activated language pack and if you then install the RDAgent, this information is never written to the registry (the WVD/AVD function itself is working as expected).
If you use this Virtual Machine - or session hosts you built based on this VM - you can no longer detect the WVD-tenant, host pool name from the registry. These also affect my tools using this information:
- Azure Monitor for WVD
- Azure Autoscale for WVD (aka "Project MySmartScale", WorkerAgent)
They reference the data to an "unknown" or "staging" host pool path (host pool path is "tenant.hostpool" name). This behavior can lead to misinterpretations.
To work-around this peculiar behavior with language packs, I added a new function to both solutions. If the tenant and host pool name can not be discovered by using the registry keys, the agents read the tag "WVD.Path" to get the names. The value in WVD.Path must be in the format: TenantName\TenantGroupName\HostPoolName:
The new agents are ready to download:
- Azure Monitor for WVD
- Azure Autoscale for WVD (aka "Project MySmartScale", WorkerAgent)
Additionally, WVDAdmin (from version 1.3.6) will tag new distributed session hosts automatically.