Thursday, January 12, 2012

SCOM 2012 - Recording a Web Browser Session

In my previous post, I outlined the steps needed to enable monitoring of a website URL with System Center 2012 Operations Manager (SCOM 2012) and how to configure it to report back on specific http error codes and latency thresholds.

This post builds on the 'Web Application Transaction Monitoring' model in SCOM 2012 and demonstrates how to record a web browser session for times when you need to monitor web logins and user experience.

Update Oct 2016: If you've landed on this post and want to know how to get this feature working with later versions of Internet Explorer, then check out this post from Marnix Wolf to get you sorted.

I'll be using the System Center 2012 Private Cloud Community Evaluation Program (CEP) website as an example. If you're interested in learning more about System Center 2012, then you can sign up to the CEP at any time using the link below:

https://connect.microsoft.com/site799/program7383


First up, click on the 'Authoring' button from the SCOM 2012 console down the bottom left hand side of the screen, select the 'Web Application Transaction Monitoring' link on the left then click on the 'Record a browser session' link on the right hand side on the screen


In the 'Web Application Editor', enter a name and description and choose an unsealed management pack to save the monitor to


From the web application editor, click on the 'Start Capture' link.


Note: At this point an Internet Explorer window will open, but depending on the type of server or workstation you have installed the SCOM web console on, if it is a 64 Bit server or workstation (which most likely it is), then you will just get a blank Internet Explorer screen like the one below with no Web Recorder add-in present.


If you are presented with the blank Internet Explorer screen with no Web Recorder add-in as above, it is because the 64 Bit server has automatically opened the 32 Bit version of Internet Explorer which currently doesn't support the Web Recorder add-in.

To enable the Web Recorder add-in, we need to make a small change in the registry of the 64 Bit server. Open 'Regedit' and navigate to the following location:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppPaths\IEXPLORE.EXE


The registry keys on the left hand side of the screen above show that Internet Explorer will always run from the 32 Bit 'Program Files (x86)' location as opposed to the 64 Bit default 'Program Files' location.

We need to edit both of these values and remove the (x86) reference from each line as the screenshots below show



The newly edited registry keys should now look like this


Once this registry change is complete, simply go back to the Web Application Editor and then click on the 'Start Capture' link again


Now the 64 Bit version of Internet Explorer will open and on the left hand side of the screen, you will see the 'Web Recorder' add-in. Click on the 'Record' button and then browse to the website that you want to configure for monitoring within SCOM 2012


As you browse to the website that you are recording and login, you should see the Web Recorder screen on the left hand side fill up with the url references for each click that you make



When you are finished your browsing, click on the 'Stop' button from the Web Recorder screen on the left hand side to finish the recording and return to the SCOM Web Application Editor


The screen below now has all of the steps imported from the Web Recorder session under the Web Site - Requests screen. To assign a watcher node for this synthetic transaction, click on the 'Configure Settings' link on the left hand side of the screen


Click on the 'Watcher Node' tab of the Web Application Properties and then select the relevant server that you want to assign the task of running this test from and specify the frequency of the test here too. When complete, click on the 'OK' button to close the Web Application properties window


Now click on the 'Apply' button down the bottom of the screen to save your changes


When al changes have been saved successfully, you can close the Web Application Editor window


In the Authoring screen, you should now see your newly recorded browser session alongside any other web application monitors that you have created within SCOM 2012


To verify that your new recorded browser session monitor is working, go back to the 'Monitoring' tab in the SCOM console and expand the 'Web Application Transaction Monitoring' folder, then click on the 'Web Applications State' link to show the health state of your newly recorded web browser session



If you want to learn some more about System Center 2012, then click on any of the links below for some of my other previous posts:

Cloud Management with System Center - Building a Private Cloud with System Center Virtual Machine Manager 2012

Cloud Management with System Center - Creating a Virtual Machine Template with System Center Virtual Machine Manager 2012

Cloud Management with System Center - Creating a Service Template with System Center Virtual Machine Manager 2012

Cloud Management with System Center - Connecting your private cloud to System Center App Controller 2012

Cloud Management with System Center - Customizing System Center App Controller 2012

Cloud Management with System Center - Connecting App Controller to Azure Part 1

Cloud Management with System Center - Connecting App Controller to Azure Part 2

Cloud Management with System Center - Integrating App Controller with SCOM

20 comments:

  1. When monitoring website availability, I like to choose two watcher nodes in case one of them is patched or taken offline for any reason. I then want to report on the COMBINED availability of the two nodes. I can do this with web app availability monitors but i seem to be unable to do so with transaction monitoring. Choosing the agent watchers group provides two reports - one for each agent.


    Is there a workaround for this?

    ReplyDelete
    Replies
    1. I accomplish this with a distributed app.

      Delete
  2. Kevin,

    I am having issues getting this to work with authenticaion. We are trying to monitor our internal web applications that require authenticaion. I've created a Run As Account (my Windows account) and associated it with a Run As Profile account then made the necessary changes to the web application monitor. Browser recordings work fine, however, when running a test I get an error: Microsoft.EnterpriseManagement.Common.ObjectNotFoundException: An object of class ManagementPackSecureReference with ID 6b0ca629-ee58-7e6f-3ed0-1b8a903e1182 was not found.

    Do you have any suggestions?

    ReplyDelete
    Replies
    1. Haven't come across that one (yet) Hayden!

      I'd suggest making sure that your SCOM /OpsMgr environment is fully patched to Rollup Update 1 and that all watcher node agents have the RU1 updates applied too.

      Failing that, try using a different RunAs account or even try creating a new unsealed management pack to save the recorded web session into and see if it makes a difference.

      Kevin.

      Delete
    2. Unfortunately, I have tried both of your suggestions already, however, neither seems to have resolved my issue.

      Delete
    3. I am having the exact same issue and no luck with the suggested troubleshooting steps. If you find a resolution to this error please update and I will update if I find a resolution as well.

      Delete
    4. I am also having the same issue. Any update to it

      Delete
    5. I am slo having the same issue, any update to it?

      Delete
    6. Did you distribute the run-as account you set up to the watcher nodes?

      Delete
    7. Did you distribute your run-as account to the watcher nodes?

      Delete
  3. I also have the same issue

    ReplyDelete
  4. Hi

    I am using OpsMgr 2012 SP1 and trying to record a web transaction however every time i select record transaction it defaults to a blank web site page in Internet Explorer. I have checked the registry settings and by default it is launching the 64Bit version of Internet Explorer. I changed it to launch the 32 bit but i get the same problem. I have tried this on both a Windows 2012 server and a windows 8 desktop and the same result.

    Please any assistance would be very grateful.

    many Thanks
    Mark

    ReplyDelete
    Replies
    1. Hi Sparksta,

      See Ricardinho's comment below.

      Kevin.

      Delete
  5. This behavior is a bug, Web Recorder do not work on IE10 (Windows 8 and 2012), it's on release notes. Already installed RU1 for SCOM 2012 SP1 and the problema remains. As workaround you can install the SCOM Console on a Windows 2008 R2 and capture the session following this link from Kevin.

    ReplyDelete
    Replies
    1. Excellent stuff Ricardinho - thanks for the comment!

      Kevin.

      Delete
    2. Just the info I was looking for - thanks for sharing.

      Lasse.

      Delete
  6. Had the same problem with windows 2012, how do i install the SCOM console on a different machine? Thank you.

    ReplyDelete
  7. We are at SCOM 2012 RU2 and are still have the issue of authentication. I have changed the "get" to a "post" and physically added the credentials into the recorded session with no luck. If anyone can offer more suggestions I would appreciate it!

    ReplyDelete
  8. Your step by step explanations make it very clear to me. Thanks for such a great up-to-date clarification. I will recommend your blog to my colleagues.

    ReplyDelete
  9. Thank for the blog. I have problem while doing above steps. My application using Ext.js. Where all server side calls using ajax request. No query string kind of stuff is using. I am not getting ajax requests recorded using above steps. Is there any way to get ajax requests also?

    ReplyDelete