Installing EPiServer Live Monitor on IIS 7 running .NET 4

Posted on October 7, 2011 by Frederik Vig in EPiServer

A client asked me to install Live Monitor for EPiServer CMS on their site today. Simple enough task, I started by reading the tech-note for the installation: Installation Instructions – Live Monitor.

First problem

Where is the installation file!? After a little digging around I found out that it was in the zip file for EPiServer CMS (Live Monitor.msi). After the installation Live Monitor was now available under the Modules node in EPiServer Deployment Center.

Second problem

Since we’re using Web.config transformation for updating our configurations files (web.config, episerver.config etc) when we deploy to different environments (test, staging, production), we’ve removed the namespace for episerver.config (xmlns=”http://EPiServer.Configuration.EPiServerSection”). If you try to run the installation without this namespace, you’ll get the following error:

EPiServer Live Monitor - Error - Cannot validate argument on parameter 'SqlServerName'. The argument is null or empty. Supply an argument that is not null or empty and then try the command again.

<episerver xmlns="http://EPiServer.Configuration.EPiServerSection">

Adding the namespace and rerunning the installation made the error disappear.

Third problem

Everything seemed to be running smoothly until I logged in and visited the Live Monitor overview. I get an error message:

EPiServer Live Monitor Failed to load root node!

I suspected something was wrong with my web.config file after the installation. Since the site is running .NET 4, everytime I update or install EPiServer products/modules I need to update the new stuff that gets added. I’m using a source control system (of course you’re too), so it was quite easy for me to spot the new stuff that the Live Monitor installation added.

<add name="svc-Integrated" path="*.svc" verb="*" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" resourceType="Unspecified" preCondition="integratedMode" />

Should be:

<add name="svc-Integrated" path="*.svc" verb="*" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" resourceType="Unspecified" preCondition="integratedMode" />

Cool, now I get a nice overview over the site. But there are no visitors!

Fourth and last problem

First I suspected that the tracking code wasn’t added, but a quick view source showed that everything was fine there. I then opened up Firebug and saw that I got a 404 error for TrackerHandler.ashx. Having a peek at web.config again I spotted that TrackerHandler.ascx was registered in the handlers section followed by <clear />.

<handlers>
<add name="EPiTraceTracker" path="TrackerHandler.ashx" verb="*" type="EPiServer.Trace.CMS.Handlers.TrackerHandler" />
<clear />

Moving TrackerHandler.ashx after the <clear /> removed the 404 error and we have visitors showing up on Live Monitors overview!

EPiServer Live Monitor is running and tracking users

Related Posts: