# Microsoft Windows 365

Microsoft Windows 365 is a fully cloud-based service that runs entirely in Azure. Virtual desktops are provisioned and managed in the cloud, allowing organizations to centralize control without maintaining on-premises infrastructure. It is commonly used by enterprises that want to simplify desktop management, support remote work, and scale resources quickly while reducing reliance on traditional data centers.

{% hint style="info" %}
You do not need to install an inbound connector for Microsoft Windows 365.
{% endhint %}

{% stepper %}
{% step %}
**Install Collector on VMs**

Install Collector as a standard agent during provisioning or onboarding of the persistent desktop.

Perform the procedures described in the following documentation:

1. [Installing Collector on Windows](/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/installing-collector/installing-collector-on-windows.md#configuring-collector-for-vms)
2. [Installing Collector on Windows](/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/installing-collector/installing-collector-on-windows.md#installing-collector-on-vms)
3. [Installing Collector on Windows](/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/installing-collector/installing-collector-on-windows.md#installingcollectoronwindows-deployingcollectorusingactivedirectorygrouppolicy-1)
   {% endstep %}

{% step %}
**Test Collector on VMs**

{% hint style="info" %}
If needed, contact Nexthink support or your Nexthink representative.
{% endhint %}

Verify consistent reporting of **Device ID**, **Assigned User** and system uptime across **Reboots** and **Logons**.

To check this, run the following query:

{% code lineNumbers="true" %}

```sql
devices
| where virtualization.desktop_broker == windows_365 and virtualization.type == personal
| with session.vdi_events during past 168h
| compute number_of_sessions = vdi_session.count(), time_since_session_last_seen = end_time.last().time_elapsed(), last_user = user.name.last()
| include device_performance.boots during past 168h
| compute number_of_restarts = number_of_boots.sum()
| include session.logins during past 168h
| compute time_since_last_login = time.last().time_elapsed(), number_of_logons = number_of_logins.sum()
| list name, last_user, number_of_sessions, time_since_session_last_seen, number_of_logons, time_since_last_login, number_of_restarts, boot.last_full_boot_time.time_elapsed(), last_seen.time_elapsed()
| sort time_since_session_last_seen desc
```

{% endcode %}

For more information about running queries, see the [Investigations](/platform/user-guide/investigations.md) documentation.
{% endstep %}

{% step %}
**Install endpoint agents on client devices**

**Install Collectors on corporate-managed devices**

For client devices that are centrally managed by your organization, distribute Collector across all applicable devices using your preferred software deployment tools.

Perform the procedure described in the [Installing Collector](/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/installing-collector.md) documentation.

{% hint style="info" %}
The VDI Client Extension is built into Collector; you do not need to install it separately.
{% endhint %}

**Install VDI Extension on personal or self-managed devices**

For personal or self-managed client devices, make VDI Client Extension available for installation. This lightweight agent provides limited yet valuable client-side metrics without requiring full Collector deployment.

Perform the procedure described in the [Installing Nexthink VDI Client Extension](/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-vdi-environment/installing-the-nexthink-vdi-client-extension.md) documentation.
{% endstep %}

{% step %}
**Test client devices**

**Corporate-managed devices**

For sessions launched from managed client devices, confirm visibility into fields such as:

* Round-Trip Time
* Client CPU usage
* Wi-Fi Signal Strength
* Link Speed

While the network RTT is available even if Collector is installed only on the VM, full client performance information requires Collector to be installed on the endpoint. To validate the installation, check that client metrics are reported for the sessions.

If the client device is running Collector and reporting data to your Nexthink instance, its name appears as a link to the Device View, where you can access detailed information and activity.

To check this, run the following query:

{% code lineNumbers="true" %}

```sql
vdi_sessions
| with session.vdi_events during past 168h
| compute average_network_rtt = network_rtt.avg(), average_wifi_signal_strength = client.network.wifi_signal_strength.avg(), average_link_speed = client.network.wired_link_speed.avg(), average_client_cpu_usage = client.cpu.normalized_usage.avg(), last_client_plugin_version = client.plugin_version.last()
| list vdi_session.name, device.name, user.name, name, last_client.device.name, last_client_plugin_version, average_network_rtt, average_wifi_signal_strength, average_link_speed, average_client_cpu_usage
| sort last_seen desc
```

{% endcode %}

**Partner-managed or bring your own devices**

For sessions launched from externally-managed client devices, confirm visibility into fields such as:

* Round-Trip Time
* Wi-Fi Signal Strength
* Link Speed

While the network RTT is available even if the Collector is installed only on the VM, full network performance information requires either Collector or VDI Client Extension to be installed on the client device. To validate the installation, check that networking metrics are reported for the sessions.

If VDI Client Extension is installed, no additional device data is captured, and therefore, no Device View is available for the client device. In this case, client-related performance information is reported only within the VDI sessions.

To check this, run the following query:

{% code lineNumbers="true" %}

```sql
vdi_sessions
| with session.vdi_events during past 168h
| compute average_network_rtt = network_rtt.avg(), average_wifi_signal_strength = client.network.wifi_signal_strength.avg(), average_link_speed = client.network.wired_link_speed.avg(), average_client_cpu_usage = client.cpu.normalized_usage.avg(), last_client_plugin_version = client.plugin_version.last()
| list vdi_session.name, device.name, user.name, name, last_client.device.name, last_client_plugin_version, average_network_rtt, average_wifi_signal_strength, average_link_speed, average_client_cpu_usage
| sort last_seen desc
```

{% endcode %}
{% endstep %}
{% endstepper %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nexthink.com/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-vdi-environment/vdi-platform-specific-deployment-scenarios/microsoft-windows-365.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
