Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more
Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more
The Monitoring Server monitors mirroring jobs. As soon as a Mirroring job is started then the Mirroring Source Server sends an event (MirroringStatusEventArgs) for the state changing of the mirroring job to the monitoring Server. A subscriber can follow mirroring states from start to end.
The following are different states of a mirroring job:
MirroringStatusEventArgs | Contains a GUID which is the mirroring job ID and a MirroringTransferData. |
MirroringTransferData | Contains MirroringInitializeData, MirroringPackageBody, MirroringPackageHeader and MirroringStatus. |
MirroringInitializeData | Contains Name, DestinationPageGuid, DestinationPath, DestinationRoot, LastExecution, NrOfFilesinPackage, NrOfPagesInPackages etc. |
MirroringPackageHeader | Contains FileSize, TargetFilePath, SizeOfSentData, SizeOfReceiveData. |
MirroringStatus | Contains MirroringState and StatusLog (contains information about Processing, Warning and Error etc). |
There monitoring modes are Offline and Online.
The Monitoring Server is based on Windows Communication Foundation (WCF) Duplex Communication channel and as with all WCF this can be configured in the config file. By default the Monitoring Server is tightly integrated with the Mirroring Server 2.0 and the installation program configures it by default to use port 80.
By default, the Mirroring installer takes care of the Monitoring Server configuration as shown below.
<service
name="EPiServer.MirroringService.MirroringMonitoringService.MirroringMonitoringServer"
behaviorConfiguration="DebugServiceBehaviour">
<endpoint
address="~/SitePath/MirroringMonitoringServer.svc"
name=""
binding="wsDualHttpBinding"
bindingConfiguration="wsDualHttpBinding_MirroringMonitoringBinding"
contract="EPiServer.MirroringService.MirroringMonitoring.IMirroringMonitoringEventSystem" />
</service>
<client>
<endpoint
name=""
address="~/SitePath/MirroringMonitoringServer.svc"
binding="wsDualHttpBinding"
contract="EPiServer.MirroringService.MirroringMonitoring.IMirroringMonitoringEventSystem" />
</client>
A custom subscriber can use the MirroringMonitoringClient helper class. The subscriber can receive events via the MirroringTransferStatusEventHandler. There is also possibility to subscribe on a specific mirroring job via the Subscribe (GUID contextId) method or for all mirroring jobs via the Subscribe() method.
To make a subscription against the monitoring server, you need only to create an instance of MirroringMonitoringClient endpointName which is defined in app.config.
To receive Mirroring events or to be notified from the Monitoring Server, the application has to add a handler to the MirroringTransferStatusEventHandler event.
The Mirroring 2.0 ships with a simple example Monitoring WinForms application which the user can use to view both online and offline logs.
Last updated: Mar 31, 2014