# Configuration guide: Microsoft AVD essentials

{% hint style="warning" %}
The configuration opions on this page are only accessible to [administrators](https://docs.nexthink.com/platform/user-guide/administration/account-management/roles#roles-administration).

Refer to the [Usage guide: Microsoft AVD essentials](https://docs.nexthink.com/platform/library-packs/vdi/microsoft/microsoft-avd-essentials/usage-guide-microsoft-avd-essentials) to use library content as a standard user.
{% endhint %}

## **Prerequisites** <a href="#documentation-pre-requisites" id="documentation-pre-requisites"></a>

This library pack contains content from the following required [expansion products](https://docs.nexthink.com/platform/latest/products):

* [Nexthink VDI Experience](https://docs.nexthink.com/platform/user-guide/vdi-experience).

{% hint style="info" %}
Some of these products offer default access to their respective content and can still be used without [expansion products](https://docs.nexthink.com/platform/latest/products).

Refer to the [Nexthink Infinity thresholds and limits overview](https://edocs.nexthink.com/nexthink-infinity/infinity-specifications/nexthink-infinity-default-thresholds-overview) documentation for more information about default thresholds for expansion products.
{% endhint %}

## **Included content and dependencies** <a href="#documentation-contentanddependencies" id="documentation-contentanddependencies"></a>

This library pack contains the following content and dependencies:

<table><thead><tr><th width="145.6666259765625">Content type</th><th width="190">Name</th><th width="399.333251953125">Description</th></tr></thead><tbody><tr><td><a href="../../../../user-guide/live-dashboards">Dashboards</a></td><td>Microsoft AVD virtual machine monitoring</td><td>Monitor the health and availability of Microsoft AVD machines by identifying performance issues, stale VMs, or registration failures that impact user experience.</td></tr><tr><td><a href="../../../../user-guide/applications">Applications</a></td><td>Microsoft AVD</td><td>This network application provides visibility into the connectivity and network usage of the Microsoft AVD on devices, helping to identify any issues with this application.</td></tr><tr><td></td><td>Microsoft AVD client</td><td>This hybrid Web/desktop application provides visibility into the usage, performance, and stability of the Microsoft AVD client on devices, helping to identify issues with the application.</td></tr><tr><td><a href="../../../../user-guide/alerts-and-diagnostics">Monitors</a></td><td>High percentage of disconnected sessions per desktop pool</td><td>Identifies frequent or unexpected drops.</td></tr><tr><td></td><td>High CPU usage per desktop pool</td><td>Flags potential performance bottlenecks.</td></tr><tr><td></td><td>High average latency per VDI client location</td><td>Highlights network-related delays by region.</td></tr><tr><td></td><td>High number of sessions per virtual machine</td><td>Prevents resource overutilization.</td></tr><tr><td><a href="../../../../user-guide/remote-actions">Remote actions</a></td><td>Invoke restart of session host</td><td>Restarts the host machine, by effectively restarting all user sessions.</td></tr><tr><td></td><td>Invoke update GPO computer policy</td><td>Refreshes Group Policy settings on the host machine by executing the gpupdate command at the system level.</td></tr><tr><td></td><td>Invoke update GPO user policy</td><td>Triggers a user-level Group Policy refresh for the currently logged-in user using the command gpupdate /target:user /force.</td></tr><tr><td></td><td>Invoke end process</td><td>Can be used to terminate a process which is running within a user session on a Windows device.</td></tr><tr><td></td><td>Log off VDI session</td><td>Logs off an active Virtual Desktop Infrastructure (VDI) session on a Windows VDI.</td></tr><tr><td></td><td>Get Azure Virtual Desktop information</td><td>Retrieves the Azure Virtual Destkop agent status, the identifier of the Azure resource, the name of the top level Resource group and the name of the group of devices the Virtual desktop belongs to.</td></tr><tr><td><a href="../../../../user-guide/administration/content-management/custom-fields-management">Custom fields</a></td><td>AVD reboot health</td><td>Indicates the reboot health of a device based on the 'Days since last reboot'</td></tr></tbody></table>

## Configuring Microsoft AVD essentials

{% hint style="info" %}
Adapt these suggested configuration steps to edit and customize content according to your organizational needs.
{% endhint %}

Follow these steps to install and configure content:

* Before configuration - Install library pack content from [Nexthink Library](https://docs.nexthink.com/platform/latest/library)
* [Step 1 - Configure remote action(s)](#configuring-remote-action-s)
* [Step 2 - ](#documentation-step3-editcampaigns)[Configure monitors](#step-2-configure-monitors)
* [Step 3 - Configure custom fields](#step-3-configure-custom-fields)

### **Step 1 - Configure remote action(s)**

1. From the main menu, navigate to the **Remote Actions** > [Manage remote action ](https://docs.nexthink.com/platform/latest/manage-remote-actions)page.
2. Review and edit your remote actions.

Nexthink recommends the following configurations for these remote actions:

<table><thead><tr><th>Name</th><th>Trigger Schedule</th><th>Parameters to edit</th></tr></thead><tbody><tr><td>Invoke restart of session host</td><td>Triggered on demand to resolve issues</td><td></td></tr><tr><td>Invoke update GPO computer policy</td><td>Triggered on demand to resolve issues</td><td></td></tr><tr><td>Invoke update GPO user policy</td><td>Triggered on demand to resolve issues</td><td></td></tr><tr><td>Invoke end process</td><td>Triggered on demand to resolve issues</td><td></td></tr><tr><td>Log off VDI session</td><td>Triggered on demand to resolve issues</td><td></td></tr><tr><td>Get Azure Virtual Desktop information</td><td>Scheduled locally on VMs</td><td><p>Device identification for schedule:</p><pre><code>devices
| where virtualization.desktop_broker in [ azure_virtual_desktop, windows_365 ]
</code></pre></td></tr></tbody></table>

### Step 2 - Configure monitors

To install and (partially) configure content:

1. From the main menu, navigate to the **Alerts & Diagnostics** > [Manage alerts ](https://docs.nexthink.com/platform/user-guide/alerts-and-diagnostics/managing-alerts)page.
2. Review and edit your monitors.
3. For each monitor:
   * The **Scheduling frequency** cannot be modified, like many other configuration fields.
   * If required, set additional [Trigger conditions](https://docs.nexthink.com/platform/user-guide/alerts-and-diagnostics/managing-alerts/customizing-built-in-monitors#customizingbuilt-inmonitors-queryandconditions) and refine the VDI monitor thresholds within the monitor configuration page. Refer to the table below.
   * Additionally, customize [Filters](https://docs.nexthink.com/platform/user-guide/alerts-and-diagnostics/managing-alerts/customizing-built-in-monitors#customizingbuilt-inmonitors-filter), [Priority](https://docs.nexthink.com/platform/user-guide/alerts-and-diagnostics/managing-alerts/creating-custom-monitors#filling-in-the-general-tab), and [Notifications](https://docs.nexthink.com/platform/user-guide/alerts-and-diagnostics/managing-alerts/configuring-email-and-webhook-notifications-for-alerts) for each VDI monitor.

| Name                                                          | Scheduling Frequency             | Trigger conditions to edit                                                                                                                    |
| ------------------------------------------------------------- | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| **High average latency per VDI client location**              | Real time                        | <ol><li>Average network latency<br>(Default - moderate increase)</li><li>Percentage of events with high latency<br>(Default >= 20%)</li></ol> |
| **High CPU usage per desktop pool**                           | <p>Real time<br></p>             | <ol><li>Average CPU queue length<br>(Default - moderate increase)</li><li>Percentage high queue length<br>(Default >= 20%)<br></li></ol>      |
| **High number of sessions per virtual machine**               | <p>Scheduled, 15 minutes<br></p> | <p>Sessions per virtual machine<br>(Default >= 20)<br></p>                                                                                    |
| **High percentage of disconnected sessions per desktop pool** | <p>Scheduled, 15 minutes<br></p> | <p>Percentage of disconnected sessions<br>(Default >= 40%)<br></p>                                                                            |

### Step 3 - Configure custom fields

1. From the main menu, navigate to the **Administration** > [Custom fields ](https://nexthink.gitbook.io/opd/user-guide/administration/content-management/custom-fields-management)page.
2. Check and customize the rule criteria for each custom field.
3. Edit the NQL queries if necessary to suit your environment and reboot policies.
4. Nexthink recommends the following settings:

<table><thead><tr><th width="140">Name</th><th width="175.66668701171875">NQL ID</th><th width="108">Rule name</th><th width="86">Object</th><th width="253.66668701171875">NQL query</th></tr></thead><tbody><tr><td>AVD reboot health</td><td>avd_reboot_health</td><td>Good<br>Average<br>Poor</td><td>device</td><td><pre><code>devices
| where virtualization.desktop_broker in [ azure_virtual_desktop, windows_365 ] and ((virtualization.type in [shared, pooled] and boot.days_since_last_full_boot &#x3C;= 1) or (virtualization.type in [personal] and boot.days_since_last_full_boot &#x3C;= 5))
</code></pre></td></tr></tbody></table>

***
