Configure Live Monitor for Multiple Bindings

Product version:

EPiServer CMO 1.0 / 1.1

Document version:

1.0

Document last saved:

 

Live Monitor utilizes WCF service. Due to WCF services behavior additional configuration steps should be performed on sites with multiple bindings.

Modify “TraceService.svc“

Add “Factory” parameter to the service declaration in file: “<site_root_directory>\CMO\Trace\Services\TraceService.svc”:

<%@ ServiceHost Service="EPiServer.Cmo.Cms.Trace.Services.CmoTraceService" Debug="true" 
Factory="EPiServer.Cmo.Cms.Trace.Services.CmoTraceServiceFactory " %>

Modify web.config.

Find section:
<service behaviorConfiguration="EPiServer.Trace.Services.TraceServiceBehavior" name="EPiServer.Cmo.Cms.Trace.Services.CmoTraceService">
        <endpoint address="" binding="basicHttpBinding" contract="EPiServer.Trace.Services.ITraceService" />
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>

(under “configuration/system.serviceModel/Services” section ).

And modify it in next way:

<service behaviorConfiguration="EPiServer.Trace.Services.TraceServiceBehavior" name="EPiServer.Cmo.Cms.Trace.Services.CmoTraceService">

<endpoint address="http://<site_name_1>/CMO/Trace/services/TraceService.svc" binding="basicHttpBinding"  contract="EPiServer.Trace.Services.ITraceService" />

<endpoint address=" http://<site_name_2>/CMO/Trace/services/TraceService.svc" binding="basicHttpBinding"  contract="EPiServer.Trace.Services.ITraceService" />  
 
……
</service>

Basically you should specify “basicHttpBinding” endpoint tag for each of site addresses. Remove "mexHttpBinding" endpoint from this list.

Also add “httpGetUrl” parameter to the <behavior name="EPiServer.Trace.Services.TraceServiceBehavior"> section (under “configuration/system.serviceModel/behaviors” section):

<behavior name="EPiServer.Trace.Services.TraceServiceBehavior">
<serviceMetadata httpGetEnabled="true" httpGetUrl="http://<site_name>/CMO/Trace/services/TraceService.svc"  />          <serviceDebug includeExceptionDetailInFaults="false" /></behavior>