# VDIエクスペリエンスNQLの機能

## 新しいNQL機能

以下のテーブルは、VDI関連のメトリクスに特化したVDI Experienceで利用可能です。

* [`vdi_session`](#metrics-in-vdi_sessions)
* [`vdi_events`](#metrics-in-vdi_events)

これらのテーブルは、仮想デスクトップのセッションおよび関連するイベントに関する洞察を提供し、ユーザーがパフォーマンスとユーザーのインタラクションをより効果的に監視することを可能にします。 `vdi_sessions` テーブルは個々のセッションに関する重要な情報を記録しており、一方で `vdi_events` テーブルはそれらのセッション中に発生する重要なイベントを記録しています。

さらに、これらのテーブルはデバイステーブルおよびユーザーテーブルと関連付けられており、すべての関連データにアクセスできます。 これらの追加は、仮想デスクトップ環境内での分析とトラブルシューティングの改善を促進します。

表についての詳細は、[NQLデータモデル](https://docs.nexthink.com/platform/ja/understanding-key-data-platform-concepts/nql-data-model)をご覧ください。

### データ解像度の向上

NQLを使用してVDIイベントデータをクエリする際、過去48時間の結果の解像度を30秒間隔に強化することができ、システムの動作についてより深い洞察を得ることができます。 これにより、異常やシステムパフォーマンスの傾向をより正確に追跡することができます。

30秒間隔でデータの解像度を上げる方法について理解するために、[#nqltimeselection-timegranularityandretention-1](https://docs.nexthink.com/platform/ja/understanding-key-data-platform-concepts/nexthink-query-language-nql/nql-syntax-overview/nql-time-selection#nqltimeselection-timegranularityandretention-1 "mention")のページをご覧ください。

## NQL例

このクエリの例のリストは、Nexthinkのwebインターフェースでの調査を成功させるために設計されています。 以下に示す調査を確認し、あなたが完了しようとしている調査に最も近いものを選んでください。 クエリをコピーして、あなたの利用ケースに合わせて調整してください。

<details>

<summary>VDIセッションの開始と終了を確認する</summary>

```sql
session.lifecycle_events
| where device.virtualization.vdi_reporting == active
| where type in [ login, connect, disconnect, logout ]
```

</details>

<details>

<summary>VDIを使用してエンドポイントを特定する</summary>

```sql
devices
| where virtualization.vdi_reporting in [ inactive, active ]
```

</details>

<details>

<summary>過去4時間内、少なくとも5分間不具合が生じたセッション</summary>

```sql
vdi_sessions 
| session.vdi_events を過去4時間に指定して 
| health.duration_with_bad_session.sum() を time_while_bad として計算
| time_while_bad が5分を超える場合
| user.name、device.name、vdi_session.name、last_interaction_time を一覧表示
```

</details>

## Connectorsからのメトリクス

オンプレミスまたはクラウドの統合機能がある場合、適切な[インバウンドコネクタ](https://docs.nexthink.com/platform/ja/configuring_nexthink/bringing-data-into-your-nexthink-instance/integrating-nexthink-with-third-party-tools/inbound-connectors)を使用してセッションデータを充実させてください。 各コネクタタイプは、以下の展開可能セクションに示すように、追加するメトリクスセットを個別に提供します。

<details>

<summary>Citrix CVADおよびDaaSコネクタが提供する追加メトリクス</summary>

* virtualization.desktop\_broker
* virtualization.desktop\_pool
* virtualization.disk\_image
* virtualization.environment\_name
* virtualization.hostname
* virtualization.hypervisor\_name
* virtualization.type
* vdi\_sessions.disk\_image
* vdi\_sessions.hostname

</details>

<details>

<summary>Microsoft AVDコネクタから提供される追加メトリクス</summary>

* virtualization.desktop\_broker
* virtualization.desktop\_pool
* virtualization.environment\_name
* virtualization.hypervisor\_name
* virtualization.instance\_size
* virtualization.region
* virtualization.type

</details>

{% hint style="info" %}
Collector はこれらのフィールドを優先度を高くして自動的に埋めることもできます。 したがって、Collector が既にこれらのフィールドを埋めていない場合に限り、Connectors はそれらを強化します。
{% endhint %}

## コレクタとVDIクライアント拡張機能からのメトリック

VDI Experienceでは、VMとクライアントデバイスの両方に特定のエージェントをインストールする必要があります:

* 仮想環境内でのアクティビティを監視し、パフォーマンスメトリクスを収集するには、すべてのVMにCollectorをインストールする必要があります。
* クライアント デバイスの種類と希望する洞察の深さに応じて、以下のエージェントのいずれかをインストールできます:
  * **Collector**: VDIメトリックの全範囲を提供します。 このエージェントは、会社管理デバイス向けであり、ユーザー エクスペリエンスに対する包括的な可視性を可能にします。
  * **VDI クライアント拡張機能**: 限られたメトリックのセットを提供する軽量のエージェントです。 Collector の完全なインストールができない個人用または自己管理デバイス向けに設計されています。

{% hint style="warning" %}
収集されたメトリクスのリストは、クライアントデバイスに Collector または VDI クライアントエクステンションがインストールされているかどうかによって異なります。 一部のメトリクスは Collector を実行する必要があり、それらは VDI クライアントエクステンションでは利用できません。 次のセクションのシナリオ説明とメトリクスリストを参照してください。
{% endhint %}

### 基本的な構成シナリオ - リモート専用の洞察

VM に Collector のみをインストールし、クライアントデバイスに VDI クライアントエクステンションまたは Collector をインストールしない場合、次の **初期メトリクス** を `vdi_sessions` および `vd_events` テーブルで収集します:

<details>

<summary><code>vdi_sessions</code> 中のメトリクス</summary>

* agent\_version
* desktop\_pool — Collector が利用可能な場合に更新されます
* disk\_image — Collector が利用可能な場合に更新されます
* 初めて確認
* id
* initial\_program
* last\_client.app\_version — Citrix専用で、Collectorまたはクライアントエクステンションがインストールされていない場合に利用可能です。
* last\_client.device.name — クライアントアプリケーションを使用しているときにのみ利用可能で、Webクライアントでは利用できません。
* last\_client.device.operating\_system.platform
* last\_interaction\_time
* 最後に見た
* ログオン\_サーバー
* 名前
* 地域
* リモート\_プロトコル
* セッション\_タイプ
* 地域
* トランスポート\_プロトコル
* uid
* 仮想化\_タイプ

</details>

<details>

<summary><code>vdi_events</code> のメトリクス</summary>

* バケット\_持続時間
* client.app\_version — Collector や Client Extension がインストールされていない場合、Citrix のみで利用可能です。
* client.device.name — クライアントアプリを使用している場合にのみ利用可能で、Webクライアントでは使用できません。
* client.device.operating\_system.platform
* context.location.country
* context.location.site
* context.location.state
* context.location.type
* context.organization.entity
* 終了\_時間
* フレームレート
* health.duration\_with\_average\_network
* health.duration\_with\_average\_responsiveness
* health.duration\_with\_average\_session
* health.duration\_with\_average\_vm\_memory
* health.duration\_with\_average\_vm\_processor
* health.duration\_with\_average\_vm\_storage
* health.duration\_with\_bad\_client\_processor
* health.duration\_with\_bad\_network
* health.duration\_with\_bad\_responsiveness
* health.duration\_with\_bad\_session
* health.duration\_with\_bad\_vm\_memory
* health.duration\_with\_bad\_vm\_processor
* health.duration\_with\_bad\_vm\_storage
* health.duration\_with\_good\_client\_processor
* health.duration\_with\_good\_network
* health.duration\_with\_good\_responsiveness
* health.duration\_with\_good\_session
* health.duration\_with\_good\_vm\_memory
* health.duration\_with\_good\_vm\_processor
* health.duration\_with\_good\_vm\_storage
* ica.input\_bandwidth\_available
* ica.input\_bandwidth\_used
* ica.input\_session\_bandwidth
* ica.input\_session\_linespeed
* ica.latency
* ica.output\_bandwidth\_available
* ica.output\_bandwidth\_used
* ica.output\_session\_bandwidth
* ica.output\_session\_linespeed
* アイドル\_持続時間
* ネットワーク\_RTT
* rdp.frame\_quality
* rdp.frames\_skipped\_client
* rdp.frames\_skipped\_network
* rdp.frames\_skipped\_server
* rdp.tcp\_bandwidth
* rdp.tcp\_receive\_rate
* rdp.tcp\_send\_rate
* rdp.udp\_bandwidth
* rdp.udp\_receive\_rate
* rdp.udp\_send\_rate
* 解像度
* 開始\_時間
* 地域
* トランスポート\_プロトコル
* ユーザー\_入力\_遅延 — 2022以前のWindows 10およびServer OSでは収集されません。
* vm.agent\_version
* vm.cpu.context\_switches
* vm.cpu.interrupt\_usage
* vm.cpu.normalized\_queue\_length
* vm.cpu.normalized\_usage
* vm.cpu.usage
* vm.memory.available
* vm.memory.cached
* vm.memory.installed
* vm.memory.non\_paged\_pool
* vm.memory.paged\_pool
* vm.memory.pages\_output\_throughput
* vm.memory.paging\_file\_size
* vm.memory.usage
* vm.memory.used
* vm.network.incoming\_throughput
* vm.network.outgoing\_throughput
* vm.system\_disk.duration\_with\_average\_queue\_length
* vm.system\_disk.duration\_with\_average\_read\_latency
* vm.system\_disk.duration\_with\_average\_write\_latency
* vm.system\_disk.duration\_with\_bad\_queue\_length
* vm.system\_disk.duration\_with\_bad\_read\_latency
* vm.system\_disk.duration\_with\_bad\_write\_latency
* vm.system\_disk.duration\_with\_good\_queue\_length
* vm.system\_disk.duration\_with\_good\_read\_latency
* vm.system\_disk.duration\_with\_good\_write\_latency
* vm.system\_disk.name
* vm.system\_disk.queue\_length
* vm.system\_disk.read\_iops
* vm.system\_disk.read\_latency
* vm.system\_disk.read\_throughput
* vm.system\_disk.write\_iops
* vm.system\_disk.write\_latency
* vm.system\_disk.write\_throughput
* vm.system\_volume.capacity
* vm.system\_volume.free
* vm.system\_volume.usage

</details>

### 中間構成シナリオ - 限定的な可視性の設定

VM上でCollectorに加えて、クライアントデバイスにVDIクライアント拡張をインストールすると、`vdi_sessions` および `vd_events` テーブルに既に収集されて列挙されているものよりも**追加の** **メトリクス**を得ることができます。詳しくは、[#remote-only-insights](#remote-only-insights "mention")をご参照ください。

<details>

<summary><code>vdi_session</code> の追加メトリクス</summary>

last\_client.plugin\_version

</details>

<details>

<summary><code>vdi_events</code> の追加メトリクス</summary>

* client.cpu.normalized\_usage
* client.network.active\_network\_adapter
* client.network.incoming\_errors
* client.network.incoming\_packets
* client.network.incoming\_throughput
* client.network.ip\_address
* client.network.outgoing\_errors
* client.network.outgoing\_packets
* client.network.outgoing\_throughput
* client.network.wan\_latency
* client.network.wifi\_signal\_strength
* client.network.wifi\_transmission\_rate
* client.network.wired\_link\_speed
* client.plugin\_version
* health.duration\_with\_average\_client\_processor

</details>

### 高度な構成シナリオ - フル可視性の設定

VM上のCollectorに加えて、クライアントデバイスにCollector（VDIクライアント拡張ではなく）をインストールすると、[#remote-only-insights](#remote-only-insights "mention")と[#limited-visibility-setup](#limited-visibility-setup "mention") に既に収集されて列挙されているものよりもさらに**追加のメトリクス**を`vdi_sessions`および`vd_events`テーブルに収集できます。

<details>

<summary><code>vdi_session</code> の追加メトリクス</summary>

* last\_client.device.collector.uid
* last\_client.device.uid

</details>

<details>

<summary><code>vdi_events</code> の追加メトリクス</summary>

* context.vdi\_client.location.country
* context.vdi\_client.location.site
* context.vdi\_client.location.state
* context.vdi\_client.location.type
* context.vdi\_client.organization.entity

</details>
