AVD Session Host Health Status Test
Healthy session hosts, which operate in an error-free manner, should be available in host pools at all times, so that AVD users are always assured of on-demand access to desktops/RemotetApps. The presence of many improperly configured, unhealthy session hosts can cause users to be denied access to VMs at business-critical junctures. To avoid this, administrators should periodically check the health of the session hosts in each host pool, swoop down on those hosts that are in a degraded health state, investigate the reasons for the poor host health, and eliminate them. This is where the AVD Session Host Health Status test helps!
At configured intervals, this test runs standard health checks on the session hosts in each host pool. Alerts are sent out if these checks fail on any session host. From the checks that failed, administrators can instantly determine what is ailing the session hosts. Detailed diagnostics point you to the precise session hosts where these checks failed, so administrators can rapidly initiate corrective action.
Note:
Typically, to consolidate log entries, correlate log data, and perform complex analysis, a host pool's logs are often sent to one/more Log Analytics Workspaces. This test reports valid metrics by reading data from these Log Analytics Workspaces only. If the host pool's logs are not sent to any Log Analytics Workspace, then this test will only report the value 0 for most of its measures. To avoid this, before configuring this test, make sure that the host pool's logs are configured to be sent to at least one Log Analytics Workspace. Follow the steps discussed in Configuring the Host Pool Logs to be Sent to a Log Analytics Workspace to achieve this.
Target of the test : A Microsoft AVD Broker
Agent deploying the test: A remote agent
Output of the test: One set of results for each AVD host pool managed by the target AVD broker
Parameters | Description |
---|---|
Test Period |
How often should the test be executed. |
Host |
The host for which the test is to be configured. |
Subscription ID |
Specify the GUID which uniquely identifies the Microsoft Azure Subscription to be monitored. To know the ID that maps to the target subscription, do the following:
|
Tenant ID |
Specify the Directory ID of the Azure AD tenant to which the target subscription belongs. To know how to determine the Directory ID, refer to Configuring the eG Agent to Monitor a Microsoft AVD Broker Using Azure ARM REST API |
Client ID and Client Password |
To collect the required metrics, the eG agent requires an Access token in the form of an Application ID and the client secret value. If a Microsoft Azure Subscription component or a Microsoft Azure Active Directory component is already being monitored, then an Application would have already been created for monitoring purposes. The Application ID and Client Secret of such an application can be specified here. However, if no such application exists, then you will have to create one for monitoring the AVD broker. To know how to create such an application and determine its Application ID and Client Secret, refer to Configuring the eG Agent to Monitor a Microsoft AVD Broker Using Azure ARM REST API. Specify the Application ID of the created Application in the Client ID text box and the client secret value in the Client Password text box. |
Proxy Host |
In some environments, all communication with the Azure cloud be routed through a proxy server. In such environments, you should make sure that the eG agent connects to the cloud via the proxy server and collects metrics. To enable metrics collection via a proxy, specify the IP address of the proxy server and the port at which the server listens against the Proxy Host and Proxy Port parameters. By default, these parameters are set to none, indicating that the eG agent is not configured to communicate via a proxy, by default. |
Proxy Username, Proxy Password and Confirm Password |
If the proxy server requires authentication, then, specify a valid proxy user name and password in the Proxy Username and Proxy Password parameters, respectively. Then, confirm the password by retyping it in the Confirm Password text box. |
Log Analytics Workspace Name |
Typically, to consolidate log entries, correlate log data, and perform complex analysis, a host pool's logs are often sent to one/more Log Analytics Workspaces. By default, the Log Analytics Workspace Name parameter is set to All. This indicates that the test reads log data from all Log Analytics Workspaces configured for the target subscription, by default. However, if you want the test to use only those Log Analytics Workspaces to which a host pool's logs are sent, then provide the names of these workspaces here as a comma-separated list. To determine the names of the workspaces, do the following:
|
DD Frequency |
Refers to the frequency with which detailed diagnosis measures are to be generated for this test. The default is 1:1. This indicates that, by default, detailed measures will be generated every time this test runs, and also every time the test detects a problem. You can modify this frequency, if you so desire. Also, if you intend to disable the detailed diagnosis capability for this test, you can do so by specifying none against DD frequency. |
Detailed Diagnosis |
To make diagnosis more efficient and accurate, eG Enterprise embeds an optional detailed diagnostic capability. With this capability, the eG agents can be configured to run detailed, more elaborate tests as and when specific problems are detected. To enable the detailed diagnosis capability of this test for a particular server, choose the On option. To disable the capability, click on the Off option. The option to selectively enable/disable the detailed diagnosis capability will be available only if the following conditions are fulfilled:
|
Measurement | Description | Measurement Unit | Interpretation |
---|---|---|---|
Success domain join |
Indicates the number of session hosts in this pool that are joined to the domain. |
Number |
Ideally, the value of this measure should be high. |
Failure domain join |
Indicate the number of session hosts in this pool that are not joined to the domain. |
Number |
Ideally, the value of this measure should be 0. A non-zero value is a cause for concern. In this case, use the detailed diagnosis of this measure to know which session hosts that are not joined to the domain and why. To resolve the 'domain join' issue on the session hosts, do the following:
|
Success domain trust |
Indicates the number of session hosts in this pool that are in a trusted domain. |
Number |
|
Failure domain trust |
Indicates the number of session hosts in this pool that are not in a trusted domain. |
Number |
If this measure reports a non-zero value, then use the detailed diagnosis of that measure to know which session hosts failed the DomainTrust check, when, and why (the exact error message that was thrown). |
Success FS logix |
Indicates the number of session hosts in this pool on which FSLogix profile redirection was successful. |
Number |
The Azure Virtual Desktop service recommends FSLogix profile containers as a user profile solution. FSLogix is designed to roam profiles in remote computing environments, such as Azure Virtual Desktop. It stores a complete user profile in a single container. At sign in, this container is dynamically attached to the computing environment using natively supported Virtual Hard Disk (VHD) and Hyper-V Virtual Hard disk (VHDX). The user profile is immediately available and appears in the system exactly like a native user profile. Ideally, the value of the Success FS logix measure should be high, and the value of the Failed FS logix measure should be 0. If the latter reports a non-zero value, then use the detailed diagnosis of that measure to know on which session hosts the FS logix redirection failed, when, and why (the exact error message that was thrown). |
Failure FS logix |
Indicates the number of session hosts in this pool on which FSLogix profile redirection failed. |
|
|
Success SxS stack |
Indicates the number of session hosts in this pool on which the AVD side-by-side stack has been successfully installed/enabled. |
Number |
Ideally, the value of this measure should be high. |
Failure SxS stack |
Indicates the number of session hosts in this pool on which the AVD side-by-side stack is not installed/enabled. |
Number |
Ideally, the value of this measure should be 0. If this measure reports a non-zero value, then use the detailed diagnosis of that measure to know which session hosts did not have the side-by-side stack. |
Success URL check |
Indicates the number of session hosts in this pool for which the URLCheck succeeded. |
Number |
Ideally, the value of this measure should be high. |
Failure URL check |
Indicates the number of session hosts in this pool for which the URLCheck failed. |
Number |
Ideally, the value of this measure should be 0. If this measure reports a non-zero value, then use the detailed diagnosis of that measure to know which session hosts failed the URLCheck, when, and why (the exact error message that was thrown). |
Success geneva agent |
Indicates the number of session hosts in this pool, where the Geneva Monitoring Agent is present. |
Number |
The Geneva Monitoring agent monitors the health of the Azure Virtual Desktop agent. It is one of the components that is essential for end-to-end user connectivity to function properly in the AVD infrastructure. Ideally therefore, the value of the Success geneva agent measure should be high, and the same for the Failure geneva agent measure should be 0. If the latter reports a non-zero value, then use the detailed diagnosis of that measure to identify the session hosts where the geneva agent is not installed. |
Failure geneva agent |
Indicates the number of session hosts in this pool, where the Geneva Monitoring Agent is not present. |
Number |
|
Success domain reachable |
Indicates the number of session hosts in this pool that are able to successfully reach the domain. |
Number |
Ideally, the value of this measure should be high. |
Failure domain reachable |
Indicates the number of session hosts in this pool that are unable to reach the domain. |
Number |
Ideally, the value of this measure should be 0. If this measure reports a non-zero value, then use the detailed diagnosis of this measure to know which session hosts could not reach the domain, when, and why (the exact error message that was thrown). |
Success web RTC redirector |
Indicates the number of session hosts in this pool on which the Remote Desktop WebRTC Redirector Service is successfully installed/enabled. |
Number |
The Remote Desktop WebRTC Redirector Service, when installed, enables Teams Media Optimization on a session host. With media optimization for Microsoft Teams, the Remote Desktop client handles audio and video locally for Teams calls and meetings. This way, the session host can offload overhead-intensive multi-media jobs to the Remote Desktop Client, thereby improving VM performance and the Teams experience. If the Failure web RTC redirector measure reports a non-zero value, then use the detailed diagnosis of that measure to know which session hosts did not have the Remote Desktop WebRTC Redirector Service installed. |
Failure web RTC redirector |
Indicates the number of session hosts in this pool on which the Remote Desktop WebRTC Redirector Service is not installed/enabled. |
Numb |
|
Success SxS stack encryption |
Indicates the number of session hosts in this pool on which the side-by-side stack is encrypted. |
Number |
|
Failure SxS stack encryption |
Indicates the number of session hosts in this pool on which the side-by-side stack is not encrypted. |
Number |
If a non-zero value is reported for this measure, use the detailed diagnosis of the measure to identify the session hosts where the side-by-side stack is not encrypted. |
Success metadata service reachable |
Indicates the number of session hosts in this pool from which the Azure Instance Metadata Service is reachable. |
Number |
The Azure Instance Metadata Service (IMDS) provides information about currently running virtual machine instances. You can use it to manage and configure your virtual machines. This information includes the SKU, storage, network configurations, and upcoming maintenance events. A non-zero value for the Success metadata service reachable measure implies that one/more session hosts are able to reach the IMDS and retrieve information about themselves from it. Ideally therefore, the value of this measure should be high. On the other hand, if a non-zero value is reported for the Failure metadata service reachable measure, it is a cause for concern. In this case therefore, use the detailed diagnosis of this measure to know which session hosts were unable to reach the IMDS, when, and why. |
Failure metadata service reachable |
Indicates the number of session hosts in this pool from which the Azure Instance Metadata Service is not reachable. |
Number |
|
Success MSIX package staging |
Indicates the number of session hosts in this pool that have been able to successfully attach apps from an MSIX package to a user session. |
Number |
MSIX app attach is an application layering solution that allows you to dynamically attach apps from an MSIX package to a user session. The MSIX package system separates apps from the operating system, making it easier to build images for virtual machines. MSIX packages also give you greater control over which apps your users can access in their virtual machines. You can even separate apps from the master image and give them to users later. If the Failure MSIX package staging measure reports the value 0, then use the detailed diagnosis of that measure to know which session hosts could not attach apps, when, and why. |
Failure MSIX package staging |
Indicates the number of session hosts in this pool that failed to attach apps from an MSIX package to a user session. |
Number |