Database accessible

Microsoft.SQLServer.ReportingServices.Windows.Monitor.Instance.DBConnection (UnitMonitor)

The monitor raises an alert if the monitoring workflow cannot access the Reporting Services Database. Note: This monitor is disabled by default. Please use overrides to enable it when necessary.

Knowledge Base article:

Summary

The monitor alerts if the monitoring workflow cannot access the Reporting Services database.

Causes

This issue may be caused by various factors:

Resolutions

Check if the report server database has been configured properly from within the Reporting Services.

External

Configure a Report Server Database Connection (SSRS Configuration Manager)

Troubleshooting Server and Database Connection Problems

Administer a Report Server Database (SSRS Native Mode)

Overridable Parameters

Name

Description

Default Value

Enabled

Enables or disables the workflow.

No

Generates Alerts

Defines whether the workflow generates an Alert.

Yes

Interval (seconds)

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

900

Synchronization Time

The synchronization time specified by using a 24-hour format. May be omitted.

 

Timeout for database connection (seconds)

The workflow will fail and register an event if it cannot access the database during the specified period.

15

Timeout (seconds)

Specifies the time the workflow is allowed to run before being closed and marked as failed.

300

Element properties:

TargetMicrosoft.SQLServer.ReportingServices.Windows.Instance
Parent MonitorSystem.Health.AvailabilityState
CategoryPerformanceHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.ReportingServices.Windows.MonitorType.Instance.DBConnection
RemotableTrue
AccessibilityPublic
Alert Message
SSRS: Instance cannot connect to SSRS Database
Instance cannot connect to Reporting Services Database. Error message is received:
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.ReportingServices.Windows.Monitor.Instance.DBConnection" Accessibility="Public" Enabled="false" Target="RsDiscW!Microsoft.SQLServer.ReportingServices.Windows.Instance" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.ReportingServices.Windows.MonitorType.Instance.DBConnection" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.ReportingServices.Windows.Monitor.Instance.DBConnection.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='Errors']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Success" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<MachineName>$Target/Property[Type='RsCore!Microsoft.SQLServer.ReportingServices.Core.Instance']/MachineName$</MachineName>
<InstanceName>$Target/Property[Type='RsCore!Microsoft.SQLServer.ReportingServices.Core.Instance']/InstanceName$</InstanceName>
<DBConnectionString>$Target/Property[Type='RsCore!Microsoft.SQLServer.ReportingServices.Core.Instance']/DBConnectionString$</DBConnectionString>
<DBName>$Target/Property[Type='RsCore!Microsoft.SQLServer.ReportingServices.Core.Instance']/DBName$</DBName>
<SqlTimeoutSeconds>200</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>