ユーザーログオンの問題の診断
ユーザーログオンの問題のトラブルシューティングを行うには、ログオン処理時間データを使用します。
ログオン処理時間は、HDXを使用するデスクトップまたはアプリに初めて接続する場合のみ測定されます。このデータには、リモートデスクトッププロトコルを使用して接続しようとするユーザーや、切断されたセッションから再接続するユーザーは含まれません。具体的には、ユーザーが最初にHDX以外のプロトコルを使用して接続してから、HDXを使用して再接続するときは、ログオン処理時間は測定されません。
[ユーザーの詳細]ビューでは、処理時間は、ログオン時刻表示の上にある数値と、ログオン処理のフェーズのグラフとして表示されます。
ユーザーがCitrix Virtual Apps and Desktopsにログオンすると、Monitor Serviceにより、ユーザーがCitrix Workspaceアプリから接続した時点から、デスクトップが使用可能になった時点までのログオンプロセスの各フェーズが追跡されます。
左側の大きな数字は総ログオン時間であり、接続の確立およびDelivery Controllerからのデスクトップの取得にかかった時間と、仮想デスクトップの認証とログオンにかかった時間を合計して計算されます。処理時間の情報は秒単位(または秒の小数単位)まで表示されます。
前提条件
ログオン期間データとドリルダウンが表示されるようにするには、次の前提条件を満たす必要があります:
- VDAにCitrix User Profile ManagerとCitrix User Profile Manager WMI Pluginをインストールする。
- Citrix Profile Management Serviceが実行されている。
- XenAppおよびXenDesktopサイト7.15以前の場合、GPO設定 [従来の実行リストを処理しない] を無効にします。
- 対話型セッションのドリルダウンでは、監査プロセスの追跡を有効にする必要があります。
- GPOドリルダウンの場合は、グループポリシーの操作ログのサイズを大きくします。
注:
ログオン処理時間は、デフォルトのWindowsシェル(explorer.exe)でのみサポートされ、カスタムシェルではサポートされません。
ユーザーログオンの問題のトラブルシューティング手順
- ログオン状態のトラブルシューティングを行うには、[ユーザーの詳細] ビューの[ログオン処理時間]パネルを使用します。
- ユーザーがログオン中の場合は、ここにログオンのプロセスが表示されます。
- ユーザーがログオン済みの場合、ユーザーがそのセッションにログオンするときにかかった時間が[ログオン処理時間]パネルに表示されます。
- ログオンプロセスの各フェーズを調査します。
ログオンプロセスのフェーズ
仲介
ユーザーに割り当てるデスクトップを決定するのに要した時間です。
マシンのスタートアップ
マシンの起動を必要とするセッションの場合、これは仮想マシンの起動にかかった時間です。次のサブセクションでは、さまざまなフェーズで仮想マシンを起動するのにかかる時間の内訳を示します:
- 電源投入 - 仮想マシンの電源オンにかかる時間を表示します
- 起動と登録 - 仮想マシンの起動と登録にかかる時間を表示します
折りたたみ可能ボタンを使用して、[マシンのスタートアップ] の下のオプションを折りたたんだり展開したりできます。
HDX接続
クライアントから仮想マシンへのHDX接続の設定で必要な手順を実行するためにかかった時間です。
認証
リモートセッションへの認証を実行するのにかかった時間です。
GPO
仮想マシン上でグループポリシー設定が有効になっている場合に、ログオン中にグループポリシーオブジェクトの適用にかかった時間です。GPOバーにマウスカーソルを重ねると、CSE(クライアント側拡張機能)ごとに各ポリシーの適用にかかった時間の詳細がヒントとして表示されます。[詳細なドリルダウン]をクリックすると、ポリシーの状態と対応するGPO名を示すテーブルが表示されます。ドリルダウンの期間はCSE処理時間のみを表し、合計GPO時間には加算されません。ドリルダウンテーブルは、詳細なトラブルシューティングやレポートで使用するためにコピーできます。各ポリシーのGPO時間は、イベントビューアーのログから取得されます。操作ログに割り当てられているメモリ(デフォルトサイズは4MB)によっては、このログは上書きされる可能性があります。操作ログのログサイズを増やす方法について詳しくは、Microsoft TechNet記事の「https://docs.microsoft.com/en-us/previous-versions/tn-archive/dd277416(v=technet.10)」を参照してください。
ログオンスクリプト
セッションでログオンスクリプトが構成されている場合、これはログオンスクリプトの実行にかかった時間です。
プロファイルのロード
ユーザーまたは仮想マシンに対してプロファイル設定が構成されている場合、これはプロファイルのロードにかかった時間です。
Citrix Profile ManagementおよびFSLogixが構成されている場合、[プロファイルのロード]バーに表示されるのはCitrix Profile ManagementおよびFSLogixがユーザープロファイルの処理に要する時間です。この情報は、管理者が処理に時間がかかる問題をトラブルシューティングするために役立ちます。Profile ManagementおよびFSLogixが構成されている場合、[プロファイルロード]バーには長くなった処理時間が表示されます。この処理時間の増加は機能を拡張した結果であり、パフォーマンスが低下したわけではありません。この機能強化は、VDAバージョン2407以降で利用できます。
[プロファイルのロード]バーの上にカーソルを置くと、現在のセッションのユーザープロファイルの詳細を示すツールチップが表示されます。この追加情報は、高プロファイル負荷の問題のトラブルシューティングに役立ちます。
[詳細なドリルダウン] をクリックすると、プロファイルのルートフォルダー(C:/Users/usernameなど)内の個別のフォルダー、そのサイズとファイル数(サブフォルダー内のファイルを含む)へと、さらにドリルダウンできます。
プロファイルドリルダウンは、VDA 1811以降で利用できます。プロファイルドリルダウン情報を使用すると、長いプロファイルロード時間に関連する問題を解決できます。次の操作を実行できます:
- ユーザープロファイルをリセットする
- 大きな不要ファイルを削除してプロファイルを最適化する
- ファイル数を減らしてネットワーク負荷を軽減する
- プロファイルストリーム配信を使用する
デフォルトでは、すべてのフォルダ名が表示されます。フォルダ名を非表示にするには、次の手順に従ってVDAマシンのレジストリ値を編集します:
警告:
レジストリの追加や編集を誤ると、深刻な問題が発生する可能性があり、オペレーティングシステムの再インストールが必要になる場合もあります。レジストリエディターの誤用による障害に対して、Citrixでは一切責任を負いません。レジストリエディターは、お客様の責任と判断の範囲でご使用ください。また、レジストリファイルのバックアップを作成してから、レジストリを編集してください。
- VDAで、HKEY_LOCAL_MACHINE\Software\Citrix\Directorに新しいレジストリ値ProfileFoldersNameHiddenを追加します。\
- 値を1に設定します。この値は、DWORD(32ビット)値である必要があります。フォルダ名の表示が無効になりました。
- フォルダ名を再度表示するには、値を0に設定します。
注:
GPOまたはPowerShellを使用して、複数のマシンでレジストリ値の変更を適用できます。GPOを使用してレジストリの変更を展開する方法について詳しくは、ブログを参照してください。
追加情報
- プロファイルのドリルダウンでは、リダイレクトされたフォルダーは考慮されません。
- ルートフォルダー内のNTUser.datファイルは、エンドユーザーに表示されないことがあります。ただし、これらはプロファイルのドリルダウンに含まれ、ルートフォルダー内のファイルのリストに表示されます。
- AppDataフォルダーには、プロファイルドリルダウンに含まれていない、いくつかの隠しファイルがあります。
- ファイル数およびプロファイルサイズに関するデータは、Windowsの制限事項が原因で[個人設定]パネルのデータと一致しないことがあります。
対話型セッション
これは、ユーザープロファイルのロード後、キーボードやマウスの制御をユーザーに「渡す」までにかかった時間です。通常、ログオンプロセスのすべてのフェーズで最も長い時間であり、次のように計算されます:対話型セッションの処理時間 = デスクトップ準備完了イベントのタイムスタンプ(VDAのEventId 1000) - ユーザープロファイルロード完了イベントのタイムスタンプ(VDAのEventId 2)。対話型セッションには、userinit実行前、userinit、Shellの3つのサブフェーズがあります。対話型セッションにカーソルを合わせると、次のツールチップが表示されます:
- サブフェーズ
- 各サブフェーズの所要時間
- これらのサブフェーズ間の累積時間遅延合計
折りたたみ可能ボタンを使用して、[対話型セッション] の下のオプションを折りたたんだり展開したりできます。
注:
この機能はVDAバージョン1811以降で使用できます。7.18より前のバージョンのサイトでセッションを開始してから7.18にアップグレードした場合、「サーバーエラーのためドリルダウンを使用できません。」というメッセージが表示されます。アップグレード後にセッションを起動した場合は、エラーメッセージは表示されません。
各サブフェーズの期間を表示するには、仮想マシン(VDA )でプロセス追跡の監査を有効にします。プロセス追跡の監査が無効(デフォルト)の場合、表示されるのはuserinit実行前の時間と、UserinitとShellの合計時間になります。以下の手順により、グループポリシーオブジェクト(GPO)を使用してプロセス追跡の監査を有効化できます:
- GPOを作成し、GPOエディターで編集します。
- [コンピューターの構成]>[Windowsの設定]>[セキュリティの設定]>[ローカルポリシー]>[監査ポリシー] の順に移動します。
- 右側のペインで、[プロセス追跡の監査]をダブルクリックします。
- [成功] チェックボックスをオンにして、[OK]をクリックします。
- このGPOを目的のVDAやグループに適用します。
プロセス追跡の監査の詳細とこの機能の有効化および無効化の切り替え方法については、Microsoftのドキュメントhttps://docs.microsoft.com/en-us/previous-versions/ms813609(v=msdn.10)を参照してください。 [ユーザーの詳細]ビューの[ログオン処理時間]パネル。
- 対話型セッション – userinit実行前: 対話型セッションの所要時間のうち、グループポリシーオブジェクトおよびスクリプトの適用にかかった時間です。このサブフェーズは、GPOとスクリプトを最適化することで短縮できます。
- 対話型セッション – userinit: Windowsマシンにユーザーがログオンすると、Winlogonによりuserinit.exeが実行されます。Userinit.exeはログオンスクリプトを実行し、ネットワーク接続を再確立して、WindowsユーザーインターフェイスであるExplorer.exeを起動します。この対話型セッションのサブフェーズは、userinit.exeの開始から、仮想デスクトップまたはアプリケーションのユーザーインターフェイスの起動までの時間に相当します。
- 対話型セッション – Shell: 前のサブフェーズで、userinitによりWindowsユーザーインターフェイスの初期化が開始されます。Shellサブフェーズは、ユーザーインターフェイスの初期化から、ユーザーにキーボードとマウスの制御が渡されるまでの時間に相当します。
- 遅延: userinit実行前およびuserinitとuserinitおよびShellの各サブフェーズ間の累積遅延時間です。
総ログオン時間は、これらの各フェーズを厳密に合計したものではありません。たとえば、一部のフェーズは並行して発生するほか、フェーズによっては追加処理が発生してログオン処理時間が合計値よりも大きくなることがあります。 総ログオン処理時間には、ICAファイルのダウンロードとアプリケーションでのICAファイルの起動までの時間に相当する、ICAアイドル時間は含まれません。 アプリケーション起動時にICAファイルを自動的に開くようにするは、ICAファイルをダウンロード時に自動で開くようにお使いのWebブラウザーを構成します。詳しくは、CTX804493を参照してください。
注:
[ログオン処理時間]グラフには、ログオンフェーズが秒単位で表示されます。1秒未満の時間値はすべて、秒未満の値として表示されます。1秒を超える値は、0.5秒単位に丸められます。グラフは、Y軸の最高値を200秒として表示するように設計されています。200秒を超える値はすべて、実際の値を棒グラフの上に添えて表示されます。
データのエクスポート
デフォルトのログオン期間の段階テーブルオプション(セッションログオン段階と期間)に加えて、セッションログオンページで次の列を選択することもできます:
- 開始時間
- 終了時間
- デリバリーグループ - 7日間の平均(秒)
- ユーザー - 7日間の平均(秒)
上記のデータを .CSVファイルにエクスポートすることもできます。
トラブルシューティングのヒント
グラフで異常な値または予期しない値を識別するには、現在のセッションの各フェーズで要した時間と、このユーザーの最近7日間の平均処理時間、およびこのデリバリーグループのすべてのユーザーの最近7日間の平均処理時間を比較します。
必要に応じて、担当管理者に報告します。たとえば、マシンのスタートアップに時間がかかり、ハイパーバイザーが問題の原因である可能性がある場合は、ハイパーバイザー管理者に問題を報告します。また、仲介処理に時間がかかる場合は、サイト管理者にDelivery Controllerの負荷分散のチェックを依頼します。
以下の問題について調査します。
- (現在の)ログオンを示すバーが表示されていない。
- 現在のログオン処理時間とこのユーザーの平均処理時間が大きく食い違う。次の原因が考えられます:
- 新しいアプリケーションがインストールされた。
- オペレーティングシステムが更新された。
- 構成が変更された。
- ユーザーのプロファイルサイズが大きい。この場合、プロファイルロード時間が長くなります。
- ユーザーのログオン処理時間(現在値および平均値)とデリバリーグループの平均値が大きく食い違う。
必要な場合は、[再起動] をクリックしてユーザーに再ログオンしてもらい、マシンのスタートアップや仲介時に問題が発生するかどうかを確認します。