Exchange Correlation engine is stopped and produces 717 every 300 seconds
Getting following error in the application Log where the exchange correlation engine is running and SCOM 2012 is installed?
Log Name: Application
Source: MSExchangeMonitoringCorrelation
Date:
Event ID: 717
Task Category: General
Level: Warning
Keywords: Classic
User: N/A
Computer:
Description:
Connection with the Operations Manager Root Management Server failed.
Error: System.InvalidCastException: [A]System.Collections.Generic.List`1[Microsoft.EnterpriseManagement.Monitoring.MonitoringAlertUpdateStatusIndigo] cannot be cast to [B]System.Collections.Generic.List`1[Microsoft.EnterpriseManagement.Monitoring.MonitoringAlertUpdateStatusIndigo]. Type A originates from 'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' in the context 'LoadNeither' at location 'C:\WINDOWS\assembly\GAC_64\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll'. Type B originates from 'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' in the context 'LoadNeither' at location 'C:\WINDOWS\assembly\GAC_64\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll'.
at Microsoft.EnterpriseManagement.Utilities.GetDeserializeObject[T](Byte[] serializedObject)
at Microsoft.EnterpriseManagement.DataAbstractionLayer.InstanceSpaceOperations.UpdateAlerts(Byte[] alerts, String comments, Nullable`1 modifyingConnectorId)
at Microsoft.EnterpriseManagement.Monitoring.MonitoringAlert.UpdateAlertsInternal[T](IList`1 alerts, String comments, Nullable`1 modifyingConnectorId, ManagementGroup managementGroup)
at Microsoft.EnterpriseManagement.Monitoring.MonitoringAlert.UpdateInternal(String comments, Nullable`1 modifyingConnectorId)
at Microsoft.EnterpriseManagement.Monitoring.MonitoringAlert.Update(String comments)
at Microsoft.Exchange.Monitoring.CorrelationEngine.MomSdkProxy.ResolveEntityAlert(Entity entity, MonitoringAlert monAlert)
at Microsoft.Exchange.Monitoring.CorrelationEngine.MomSdkProxy.ResolveEntityAlerts(Entity entity, String alertCriteriaString)
at Microsoft.Exchange.Monitoring.CorrelationEngine.CorrelationEngine.CorrelateWithinEntity(Node entity)
at Microsoft.Exchange.Monitoring.CorrelationEngine.CorrelationEngine.CorrelateBatchTask(Object batchData)
Usually the weird cast exceptions occur because the exchange correlation engine needs the 2007 R2 assemblies, but if SCOM 2012 is installed it will take the new 2012 binaries, which might lead in some environments to exceptions as above.
There are 2 workarounds for this by design "feature":
1.Open Microsoft.Exchange.Monitoring.CorrelationEngine.exe.config in a text editor such as Notepad
Locate the following line in the configuration file:
<add key="AutoResolveAlerts" value="true" />
Change <add key="AutoResolveAlerts" value="true" /> to <add key="AutoResolveAlerts" value="false" />
Restart the Microsoft Exchange Monitoring Correlation Engine service.
This will disable the exchange correlation engine ability to auto resolve alerts.
2. InstallExchange Correlation Engine standalone (without SCOM 2012 Management Server components)
Then:
Stop Microsoft Exchange Monitoring Correlation service
Copy 2007 R2 SDK binaries (Program Files\Microsoft\Exchange Server\v14\Bin):
• Microsoft.EnterpriseManagement.OperationsManager.Common.dll
• Microsoft.EnterpriseManagement.OperationsManager.dll
• MomBidLdr.dll
Start Exchange Correlation Service.
Happy Exchange monitoring!
Comments
- Anonymous
January 01, 2003
thank you - Anonymous
February 12, 2016
If you move this to a standalone server what permissions does the service require? do I need to update it to the same service account as the SDK service on the management servers?