動的セッション記録
以前は、セッション記録は、記録ポリシーを満たすセッションの開始時に厳密に開始され、それらのセッションが終了すると厳密に停止していました。
7.18リリース以降、Citrixは動的セッション記録機能を導入しました。この機能を使用すると、特定のユーザーが起動した特定のセッションまたは複数のセッションの記録を、セッション中にいつでも開始または停止できます。
注:
この機能が期待どおりに動作するようにするには、Session Recording、VDA、およびDelivery Controllerをバージョン7.18以降にアップグレードしてください。
動的セッション記録の有効化または無効化
Session Recording Agentには、この機能を有効または無効にするためのレジストリ値が追加されています。このレジストリ値はデフォルトで1に設定されており、これは機能がデフォルトで有効になっていることを意味します。
この機能を有効または無効にするには、次の手順を実行します。
- Session Recordingのインストールが完了したら、Session Recording Agentをインストールしたマシンに管理者としてログオンします。
- レジストリエディターを開きます。
-
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditorに移動します。 - DynamicControlAllowedの値を0に設定するか、デフォルト値の1を使用します。 1: 動的記録を有効にする 0: 動的記録を無効にする
- 設定を有効にするには、Session Recording Agentを再起動します。 展開にMCSまたはPVSを使用している場合は、マスターイメージの設定を変更し、更新を実行して変更を有効にします。
警告:
レジストリを誤って編集すると、オペレーティングシステムの再インストールが必要になるような深刻な問題が発生する可能性があります。Citrix®は、レジストリエディターの誤った使用によって生じる問題が解決できることを保証できません。レジストリエディターは自己責任で使用してください。編集する前に必ずレジストリをバックアップしてください。
Citrix SDKのPowerShellコマンドを使用して、動的に記録を開始または停止する
You can use the dynamic session recording feature in both on-premises and Citrix Cloud environments by using the Citrix Virtual Apps and Desktops™ PowerShell SDK and the Citrix Virtual Apps and Desktops Remote PowerShell SDK, respectively.
どのSDKをインストールして使用するかを決定するには、記録ポリシーの作成時に指定したDelivery Controllerに注意してください。Citrix Cloud環境でセッションを記録するためにCitrix Cloud Controllerチェックボックスを選択した場合、Citrix Cloudの資格情報を検証する必要があります。詳細については、「カスタム記録ポリシーの作成」を参照してください。

注:
Remote PowerShell SDKをCitrix Cloud Connector™マシンにインストールしないでください。Remote PowerShell SDKは、同じリソースの場所にある任意のドメイン参加済みマシンにインストールできます。このSDKのコマンドレットをCloud Connectorで実行しないことをお勧めします。このSDKの操作にはCloud Connectorは関与しません。
次の表に、両方のCitrix SDKが動的セッション記録のために提供する3つのPowerShellコマンドを示します。
| コマンド | Description |
|---|---|
| Start-BrokerSessionRecording | 特定のアクティブなセッション、アクティブなセッションのリスト、または特定のユーザーによって起動されたセッションの記録を開始できます。詳細については、Get-Help Start-BrokerSessionRecordingを実行してコマンドのオンラインヘルプを参照してください。 |
| Stop-BrokerSessionRecording | 特定のアクティブなセッション、アクティブなセッションのリスト、または特定のユーザーによって起動されたセッションの記録を停止できます。詳細については、Get-Help Stop-BrokerSessionRecordingを実行してコマンドのオンラインヘルプを参照してください。 |
| Get-BrokerSessionRecordingStatus | 特定のアクティブなセッションの記録ステータスを取得できます。詳細については、Get-Help Get-BrokerSessionRecordingStatusを実行してコマンドのオンラインヘルプを参照してください。 |
例えば、ユーザーが問題を報告し、タイムリーなサポートが必要な場合、この機能を使用して、ユーザーのアクティブなセッションの記録を動的に開始し、ライブ記録を再生して、その後のトラブルシューティングを進めることができます。次の操作を実行できます。
-
(For Citrix Virtual Apps™ and Desktops PowerShell SDK only) Launch PowerShell from the Citrix Studio console.

-
Get-BrokerSessionコマンドを使用して、ターゲットユーザーのすべてのアクティブなセッションを取得します。ブローカーセッションの取得を実行する(/ja-jp/session-recording/2107/media/run-get-broker-session.png)
-
Get-BrokerSessionRecordingStatusコマンドを使用して、指定されたセッションの記録ステータスを取得します。セッションステータスの取得を実行する(/ja-jp/session-recording/2107/media/run-get-session-status.png)
注:
-Session パラメーターは、一度に1つのセッション Uid のみを受け入れることができます。
-
Start-BrokerSessionRecordingコマンドを使用して記録を開始します。デフォルトでは、記録アクティビティをユーザーに通知するメッセージが表示されます。次の表は、
Start-BrokerSessionRecordingコマンドの一般的な使用方法を示しています。コマンド 説明内容 Start-BrokerSessionRecording -User DomainA \ UserA DomainA という名前のドメインでユーザー UserA のすべてのセッションの記録を開始し、UserA に通知します。 Start-BrokerSessionRecording -User DomainA \ UserA -NotifyUser $false DomainAという名前のドメインのユーザーUserAのすべてのセッションの記録を開始し、UserAに通知しません。 Start-BrokerSessionRecording -Sessions $SessionObject $SessionObjectという名前のオブジェクト内のすべてのセッションの記録を開始し、ユーザーに通知します。$SessionObjectオブジェクトを取得するには、 $SessionObject=Get-BrokerSession –username UserAを実行します。オブジェクトの名前にはドル記号 $ がプレフィックスとして付きます。詳細については、手順2とコマンドのオンラインヘルプを参照してください。Start-BrokerSessionRecording -Sessions uid1,uid2,…,uidn セッションuid1、uid2、…、およびuidnの記録を開始し、ユーザーに通知します。 -
Get-BrokerSessionRecordingStatusコマンドを使用して、各ターゲットセッションの記録ステータスを取得します。ステータスはSessionBeingRecordedである必要があります。 -
Session Recording PlayerでLiveまたはCompleteの記録を再生し、その後のトラブルシューティングに進みます。
注:
Stop-BrokerSessionRecordingコマンドによって終了された「Complete」記録を再生し、記録されたセッションの最後のセクションがアイドル状態の場合、プレーヤーのプログレスバーのタイムラインの最後のセクションが灰色で表示されることがあります。記録されたセッションに継続的なアクティビティがある場合は、これは明らかではありません。 -
報告された問題がトリアージまたは解決されたら、
Stop-BrokerSessionRecordingコマンドを使用して記録を停止します。次の表は、このコマンドの一般的な使用方法を示しています。
コマンド Description Stop-BrokerSessionRecording -User DomainA \ UserA DomainAという名前のドメイン内のユーザーUserAのすべてのセッションの記録を停止します。 Stop-BrokerSessionRecording -Sessions $SessionObject $SessionObject内のすべてのセッションの記録を停止します。 Stop-BrokerSessionRecording -Sessions uid1,uid2,…,uidn セッションuid1、uid2、…、およびuidnの記録を停止します。
Citrix Studioのログ画面で、Start-BrokerSessionRecordingコマンドとStop-BrokerSessionRecordingコマンドの結果ログを表示できます。
