Session Recording

Last Modified: Dec 11, 2016 @ 7:18 pm

Navigation

ūüí° = Recently Updated

Planning

George Kuruvilla – An Introduction To Session Recording (XA/XD 7.6 Feature Pack 1) ‚Äď Installation, Configuration and User Experience

Citrix links:

XenApp/XenDesktop Platinum Edition licensing is required.

Remote Desktop Session Host VDAs added in Session Recording 7.6. Virtual desktops added in Session Recording 7.8.

There is no relation between Session Recording and XenApp/XenDesktop farms. You can have Agents from multiple XenApp/XenDesktop farms recording to a common Session Recording server. Or you can split a XenApp/XenDesktop farm so that different Agents point to different Session Recording servers. An Agent can only point to one Session Recording server (Load Balancing is not supported).

The Session Recording server will need a hard drive to store the recordings. Disk access is primarily writes.

Offloaded content (e.g. HDX Flash, Lync webcam, MMR) is not recorded.

Session Recording server needs a certificate. The certificate must be trusted by Agents and Players. Internal Certificate Authority recommended.

SQL:

  • Supported Versions = SQL 2008 R2 Service Pack 3 through SQL 2016.
  • The SQL database is very small.
  • The database name is CitrixSessionRecording. Can‚Äôt be changed.
  • Temporary sysadmin permissions are needed to create the database and sysadmin can be revoked after installation.
  • SQL Browser Service must be running.

Download Session Recording 7.11 from XenApp 7.12 / XenDesktop 7.12, Platinum Edition Components:

Session Recording Server Installs

IIS and Message Queuing

  1. If you are installing this on Windows Server 2008 R2 then see the prerequisites list at Citrix Docs.
  2. In Server Manager, open the Manage menu, and click Add Roles and Features.
  3. Skip to the Server Roles page.
  4. In the Server Roles page, check the box next to Web Server (IIS), and click Next.
  5. In the Features page, expand .NET Framework 4.5 Features, expand WCF services, and select HTTP Activation.
  6. Expand Message Queuing, and expand Message Queuing Services.
  7. Select Message Queuing Server and HTTP Support. Click Next.
  8. In the Web Server Role > Select role services page, expand Security and click Windows Authentication.
  9. Expand Application Development and select ASP.NET 4.5/4.6.

  10. Expand IIS 6 Management Compatibility and select all four boxes. Click Next through the rest of the wizard.
  11. Use MMC Certificates snap-in or IIS or similar to request a machine certificate.
  12. In IIS Manager, right-click the Default Web Site, and click Edit Bindings.
  13. On the right, click Add.
  14. Change the Type to https.
  15. Select the certificate and click OK.

Server Components

  1. If you are installing this on Windows Server 2008 R2 then see the prerequisites list at Citrix Docs.
  2. The person installing Session Recording needs to be a sysadmin on the remote SQL server.
  3. In the SessionRecording7.12.0\Session Recording Administration folder, run Broker_PowerShellSnapIn_x64.msi.
  4. In the Please read the Citrix Broker PowerShell Snap-In License Agreement page, check the box next to I accept the terms, and click Install.
  5. In the Completed the Citrix Broker PowerShell Snap-In Setup Wizard page, click Finish.
  6. Run SessionRecordingAdministrationx64.msi.
  7. In the Welcome to the Citrix Session Recording Administration Installation Wizard page, click Next.
  8. In the License Agreement page, select I accept the license agreement, and click Next.
  9. In the Select Features page, click Next.
  10. In the Database and Server Configuration page, enter the name of the SQL server and click Test.

  11. Enter the name of the Session Recording server in domain\machine-name format, and click Next.
  12. In the Administrator Logging Configuration page, click Next.
  13. In the Citrix Customer Experience Improvement Program page, make a choice and click Next.

  14. In the Citrix Session Recording Administration has been successfully installed page, click Finish.
  15. In SQL Server Management Studio, notice the new CitrixSessionRecording database.

Upgrade

If you are upgrading from 7.8 or older, the logging feature won’t be installed.

  1. In Server Manager > Add Roles and Features, on the Features page, expand .NET Framework 4.5 Features, expand WCF Services and select HTTP Activation. Finish the wizard.
  2. In Programs and Features, right-click Citrix Session Recording Administration, and click Change.
  3. In the Application Maintenance page, select Modify and click Next.
  4. In the Select Features page, expand Session Recording Server.
  5. Change the selection for Session Recording Administrator Logging to installed and click Next.
  6. If you see a message about HTTP Activation, install the feature and restart the wizard.
  7. In the Administrator Logging Configuration page, click Next.
  8. In the Ready to Modify the Application page, click Next.
  9. In the Citrix Session Recording Administration has been successfully installed page, click Finish.

Session Recording Server Configuration

  1. From Start Menu, run Session Recording Server Properties.
  2. In the Storage tab, specify a path that has disk space to hold the recordings. UNC is supported, but strongly discouraged.
  3. In the Signing page, select (Browse) a certificate to sign the recordings.
  4. In the Playback tab, notice that Session Recording files are encrypted before transmit. Also, it’s possible to view live sessions but live sessions are not encrypted.
  5. In the Notifications tab, you can change the message displayed to users before recording begins.

  6. The CEIP tab lets you enable or disable the Customer Experience Improvement Program.
  7. The Logging tab lets you configure Logging.
  8. When you click OK you’ll be prompted to restart the service.

David Ott¬†Session Recording Cleanup Script: You may notice that the session recording entries/files don‚Äôt go away on their own. Here is how to clean them up.¬†Just create a scheduled task to run the code below once per day (as system ‚Äď elevated). See David’s¬†blog post for details.

C:\Program Files\Citrix\SessionRecording\Server\Bin\icldb.exe remove /RETENTION:7 /DELETEFILES /F /S /L

Also see CTX134777 How to Remove Dormant Files From a SmartAuditor Database.

Authorization

  1. From the Start Menu, run Session Recording Authorization Console.
  2. In the PolicyAdministrator role, add your Citrix Admins group.
  3. If you use Director to configure Session Recording, add the Director users to the PolicyAdministrator role.
  4. In the Player role, add users that can view the recordings.
  5. By default, nobody can see the Administration Log. Add auditing users to the LoggingReader role.
  6. Session Recording 7.11 has a Session Recording Administrator Logging feature, which opens a webpage to https://SR01.corp.local/SessionRecordingLoggingWebApplication/. Only members of the LoggingReader role can see the data.

Policies

  1. From the Start Menu, run Session Recording Policy Console.
  2. Enter the hostname of the Session Recording server, and click OK.
  3. Only one policy can be enabled at a time. By default, no recording occurs. To enable recording, right-click one of the other two built-in policies and click Activate Policy.
  4. Or you can create your own policy by right-clicking Recording Policies, and clicking Add New Policy.

  5. After the policy is created, right-click it, and click Add Rule.
  6. Decide if you want notification or not, and click Next.
  7. Click OK to acknowledge this message.
  8. Choose the rule criteria. You can select more than one. New in 7.12 is IP Address or IP Range.
  9. Then click the links on the bottom specify the groups, applications, servers, and/or IP range for the rule.¬†Click Next.¬† ūüí°

  10. Give the rule a name, and click Finish.
  11.  Continue adding rules.
  12. When done creating rules, right-click the policy, and click Activate Policy.
  13. You can also rename the policy you created.

Session Recording Agent

Install the Agent on the VDAs. Platinum Licensing is required.

  1. Install Message Queuing Server with HTTP Support. If RDSH, in Server Manager, open the Manage window, and click Add Roles and Features.

    1. Skip to the Features page.
    2. In the Features page, expand Message Queuing. Expand Message Queuing Services.
    3. Check the box next to Message Queuing Server. Also check HTTP Support.
    4. Click Add Features. Click Next.
    5. In the Web Server Role > Select role services page, don’t change anything, and click Next.
    6. In the Confirm installation selections page, click Install.
    7. If install fails, try PowerShell instead.
      Install-WindowsFeature msmq-server,msmq-http-support -IncludeAllSubFeature

  2. If virtual desktop (Session Recording 7.8 and newer), go to Programs and Features.

    1. Click Turn Windows features on or off.
    2. Expand Microsoft Message Queue, expand Microsoft Message Queue, and select MSMQ HTTP Support. Click OK.
  3. In the SessionRecording7.12.0\Session Recording Agent folder, run SessionRecordingAgentx64.msi.
  4. In the Welcome to the Citrix Session Recording Agent Installation Wizard page, click Next.
  5. In the License Agreement page, select I accept the license agreement and click Next.
  6. In the Session Recording Agent Configuration page, enter the FQDN of the Session Recording Server, and click Test.
  7. Click OK and then click Next.
  8. In the Destination Folder page, click Next.
  9. In the Ready to Install the Application page, click Next.
  10. In the Citrix Session Recording Agent has been successfully installed page, click Finish.
  11. Agent Installation can also be automated. See Automating installations at Citrix Docs.
  12. In the Start Menu is Session Recording Agent Properties.
  13. You can enable or disable session recording on this Agent.
  14. For MCS and PVS VDAs, see the GenRandomQMID.ps1 script at XenApp/XenDesktop 7.11 Known Issues at Citrix Docs.

Session Recording Player

Install the Player on any Windows 7 through Windows 10 desktop machine. 32-bit color depth is required. Because of the graphics requirements, don’t run the Player as a published application.

  1. In the SessionRecording7.11.0\Session Recording Player folder, run SessionRecordingPlayer.msi.
  2. In the Welcome to the Citrix Session Recording Player Installation Wizard page, click Next.
  3. In the License Agreement page, select I accept the license agreement, and click Next.
  4. In the Destination Folder page, click Next.
  5. In the Ready to Install the Application page, click Next.
  6. In the Citrix Session Recording Player has been successfully installed page, click Finish.
  7. From the Start Menu, run the Session Recording Player.
  8. Open the Tools menu, and click Options.
  9. On the Connections tab, click Add.
  10. Enter the FQDN of the Session Recording server.
  11. On the Cache tab you can adjust the client-side cache size. Click OK.
  12. Use the Search box to find recordings.
  13. Or you can go to Tools > Advanced Search.

  14. Once you find a recording, double-click it to play it.
  15. If you see a message about Citrix Client version incompatibility, see¬†CTX206145¬†Error: “The Session Recording Player Cannot Play Back This File”¬†to edit the Player’s SsRecPlayer.exe.config file to accept the newer version.¬† ūüí°
  16. To skip spaces where no action occurred, open the Play menu, and click Fast Review Mode.
  17. You can add bookmarks by right-clicking in the viewer pane. Then you can skip to a bookmark by clicking the bookmark in the Events and Bookmarks
    pane.

Director Integration

  1. On the Director server, run command prompt elevated (as Administrator).
  2. Run C:\inetpub\wwwroot\Director\tools\DirectorConfig.exe /configsessionrecording
  3. Enter the Session Recording FQDN when prompted.
  4. Enter 1 for HTTPS.
  5. Enter 443 as the port.
  6. In Director, when you view users or machines, you can change the Session Recording policy. These policy changes don’t apply until a new session is launched.
  7. If the Session Recording menu says N/A then the Director user needs to be authorized in the Session Recording Authorization Console.

  8. If you use Director to enable or disable recording for a user or machine, rules are added to the active policy on the Session Recording server. They only take effect at next logon.

45 thoughts on “Session Recording”

  1. I have a weird issue in Director where for some users when I go to turn on Session recording it says N/A with an bubble that has “Virtual resources are not available to perform Session Recording operations.” Have you seen this before? It works for most users but I can’t find a common link between accounts that it doesn’t work on.

    1. I did some testing and if I make a policy on the session recording server for that specific user to record their sessions it enables that button in Director once they connect to an app. I’m just not sure why I can turn on some users and not others manually in Director though…strange.

      1. That’s what I currently have setup and tested but it doesn’t have the logging built in like 7.12. Does the logging show who turned on/off session recording and who looks at what recordings?

          1. Gotcha. Thanks for the help. I just finished updating to 7.12 and it appears to work with no issues. Thanks for the guide.

            On another note…when creating your own rule for recording a Published App or specific delivery group what exactly is it asking for by “Site Address”? I’ve tried various things and nothing seems to work.

          2. Site Address = Controller name.

            For app name, put in a partial name. When you click Ok and return to the Select Applications box, select the query and it shows you the apps.

            However, it’s not showing me desktops correctly.

          3. Never mind. I do see a log entry when the recording is accessed. It’s in the Configuration Change log.

  2. Hi Carl,
    First of all thank you for your blog.

    Session Recording failed when there is an appdisk attached to the VM. I get a lot of dcom errors in eventvwr.
    I tried several appdisk with no luck
    If I remove the appdisk recording works as expected

    Any idea ?

    Regards

    1. Hi jujurackon,

      Could you please tell us the version number you used for SessionRecording and XenAPP?

      And please feedback the detailed DCOM error information you have caught. Thank you!

      Best Regards

      1. Hi Lu,

        thanks for your reply

        I’m using the 7.11 version of both Citrix XenDesktop and Session Recording

        I get these errors in system eventlog :
        id7009 : A timeout was reached (180000 milliseconds) while waiting for the Infrastructure de gestion Windows service to connect

        id10005 : DCOM got error “1053” attempting to start the service winmgmt with arguments “Unavailable” in order to run the server:
        {8BC3F05E-D86B-11D0-A075-00C04FB68820}

        and i get this error in app eventlog :
        id1009 : Exception caught while obtaining session metadata or running record policy query.
        — Exception Details —
        Type: System.Runtime.InteropServices.COMException
        Message: The service did not respond to the start or control request in a timely fashion. (Exception from HRESULT: 0x8007041D)
        Stack trace:

        1. I’ve just realised that it is not related to Session Recording only. Actually, anytime I try to connect an AppDisk (I’ve tried several ones, small, big with one or more applications) I get these errors regarding services which failed to sart.

          Regards,
          Jujurackon

  3. have you ever tried to record Windows Explorer session, i can’t find the solution for this problem, session recording doesn’t work for this app.

          1. It doesn’t matter, we tried with 7.11 version and the problem exist too. The problem is only with application windows explorer or internet explorer as file browser, when you open desktop with windows explorer, session records well, the problem is only with windows explorer as app.

  4. Thankyou Carl, Excellent guide.
    I need your advise for session recording which is needed to turn on automatically & record session videos as soon as some restricted/special users bundled together in AD group login to Xenapp 7.x. Recording for all the tasks performed by them should be recorded without giving notification. Retention period is 2-3 weeks and Recording server DB – will be in same sql db on another instance where Citrix main xenapp DB is configured.
    No of users are below 10 for which recording is needed. Please advise.

    Env is planned as Xenapp7.8 on W2012R2 but you can suggest if higher versions are stable.

  5. Carl, I am running the latest version of Session Recorder 7.11 and have integrated it with Citrix Director. I am unable to view sessions because it says Session Recording N/A. However I do have the correct Authority, because I can use the player with not problem outside of Director. My only thought would be that Citrix Director needs to be upgraded to the latest version. Your Thoughts?

  6. I am looking at implementing session recording however I have a requirement to be able to save and send the files to other viewers that will not have access to the Citrix player software can you tell me if the .icl/.icle files can be played by some other software or is there an option to export as a .mp4/.mov file.

  7. I have a warning message when I try to play record: “The recorded session file does not contain a digital signature.” But I have a certificate in Session Recording Server Properties on Signing tab. What I missed?

    1. Maybe something wrong with your certificate? Or the certificate wasn’t configured before you started recording?

  8. It is recommended or possible to install the Session Recording on the same server as any other software? We currently have 2 Servers for Provisioning Services, 2 Deliver Controllers / Director / Studio, 2 Store Fronts, 2 DB (Mirrored).

  9. Hello Carl.

    Is it possible to configure it to record when an AppCrash is detected, so you can see what the user was doing before an application failed? This would be so good for troubleshooting as I have seen it is better to see what was happening than asking the user what happened, they usually do not tell the story as it is.

    1. Yep. Once it’s released I’ll update these instructions accordingly. I’ve already briefly played with it and it seems to work as intended.

  10. Carl, thank you for a most excellent guide to Session Recording as well as every other technology you’ve listed here. My question is simple and it seems that Citrix’s wording depending on which article you read is misleading, but all I want to know is if you can run the Session Recording agent on a Desktop OS VDA? Most article say Server OS VDA only, but I’ve seen a few articles that mention it will work on both. Maybe that is just a slip up, but I’d like confirmation. Thank you.

    1. I’m pretty sure it’s Server OS only, which matches the prior versions that were available for XenApp 6.5. There’s supposed to be a future release for Desktop OS.

  11. Excellent guide Carl, better than Citrix edocs definitely.

    Any ideas on how big the recorded files are and what format are they saved?

    I mean are they wmv files for eg. and does an hour of session recording roughly equal 50MB data?

    1. I’m not running this in production anywhere so I couldn’t tell you actual size. However, the files essentially contain raw ICA so they’re definitely not regular WMV. They would be much bigger if they were.

Leave a Reply