Configuration conflict with SQL Server

Microsoft.SQLServer.2012.ReportingServices.UnitMonitor.Instance.ConfigurationConflictWithSQLServer (UnitMonitor)

The monitor alerts if there is a SQL Server process running on the server and WorkingSetMaximum setting for the SSRS Instance does not allow enough memory for the SQL server process. Note: This monitor is disabled by default. Please use overrides to enable it when necessary.

Knowledge Base article:

Summary

The monitor alerts if there is a SQL Server process running on the server and WorkingSetMaximum setting for the SSRS Instance does not allow enough memory for the SQL server process.

Causes

SSRS and SQL Server total limit configurations conflict. This can be caused by:

Resolutions

This issue may be resolved by either:

Overrideable Parameters

Name

Description

Default Value

Enabled

 

0

Generates Alerts

 

Yes

Interval (seconds)

The recurring interval of time in seconds in which to run the workflow.

604800

Synchronization Time

 

 

Threshold

The monitor will change state and register an alert if SSRS and SQL Server are running on the same box and WorkingSetMaximum exceeds the threshold.

40

Element properties:

TargetMicrosoft.SQLServer.2012.ReportingServices.Instance
Parent MonitorSystem.Health.ConfigurationState
CategoryConfigurationHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2012.ReportingServices.MonitorType.Instance.ConfigurationConflictWithSQLServer
RemotableTrue
AccessibilityPublic
Alert Message
SSRS 2012: Memory configuration conflict between SSRS and SQL Server.
Total Memory Configuration ({2} GB) leaves {0} GB out of {1} GB for operating system and SQL Server that is less than threshold.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2012.ReportingServices.UnitMonitor.Instance.ConfigurationConflictWithSQLServer" Accessibility="Public" Enabled="false" Target="SQLRS!Microsoft.SQLServer.2012.ReportingServices.Instance" ParentMonitorID="SystemHealth!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2012.ReportingServices.MonitorType.Instance.ConfigurationConflictWithSQLServer" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2012.ReportingServices.UnitMonitor.Instance.ConfigurationConflictWithSQLServer.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='MemoryAvailableForOSGB']$</AlertParameter1>
<AlertParameter2>$Data/Context/Property[@Name='TotalPhysicalMemoryGB']$</AlertParameter2>
<AlertParameter3>$Data/Context/Property[@Name='WorkingSetMaximumGB']$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Warning" MonitorTypeStateID="ConfigurationConflict" HealthState="Warning"/>
<OperationalState ID="Success" MonitorTypeStateID="NoConfigurationConflict" HealthState="Success"/>
</OperationalStates>
<Configuration>
<Threshold>40</Threshold>
<IntervalSeconds>604800</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>