The monitor alerts, when Windows service for SSAS instance is not in running state for a duration greater than the configured threshold.
The monitor alerts, when Windows service for SSAS instance is not in running state for a duration greater than the configured threshold.
When this monitor reports “SQL Server Analysis Service Windows service is not running” Alert, this indicates that SSAS instance is configured to start automatically, but remained in Stopped state over a duration exceeding the configured threshold. The default-configured value is 900 seconds (15 minutes).
The monitor will not trigger the alert prior to the configured duration, when the service is stopped. This allows the administrator to restart the service without triggering the alert. However, if the service is not switched to running state within the configured period, the alert will be triggered.
SSAS Windows service could fail to start even when configured to start automatically for many reasons, including startup failure for the process, operating system issues that prevent a successful startup, or authentication failures for the service account.
Resolving this alert requires the administrators to understand and consider numerous factors including normal expected instance startup time, causes for unexpected failures of the service to start, authentication requirements for the server, and conditions in the environment.
Instance startup time can vary depending on the size of the database and other factors. The administrators may configure this setting accordingly to adjust normal expected startup time for a given SSAS instance accordingly.
Actions to remediate the condition when SSAS service is not started (or does not start when attempted):
Attempt to start SSAS service.
Review Windows System and Application event logs for indications of root cause.
Review the OLAP\Log folder for the instance, which may contain evidence of root cause including:
Crash dumps (.mdmp files), which may contain stack traces from the threads in the process at the point of failure, or, if configured accordingly, full contents of the process’ memory space, which can allow Microsoft support to determine the root cause. Particularly, noting time stamps on any dumps to see, if they correspond with failures, is a good way to know, if a particular crash dump in the folder may correspond to a particular known failure.
FlightRecorder traces, minimal traces of the server, which sometimes contain information to indicate the root cause.
Msmdsrv.log may contain details to indicate the root cause.
Use other tracing tools or utilities, such as Performance Monitor, SQL Server Profiler, or Network Monitor, to discover potential issues, which may indicate the root cause.
Use SQL Server Setup to repair the damaged instance.
Use Process Monitor tool to trace the file and registry access by SSAS service process (msmdsrv.exe), while attempting to start the service. This may reveal, if a permissions failure occurs when attempting to access the data, which the process requires during its initialization, and which leads to the failure.
Check the service configuration in the Services control panel to confirm that the location of SSAS configuration file is correct. The command line for the service’s startup is displayed on the General tab of its properties page, accessible by right clicking the service.
Contact Microsoft Support to investigate an unexpected start failure of the service.
Disable the monitor entirely, if SSAS service state is not a concern on the server.
Starting and Stopping SQL Services
Name | Description | Default Value |
Alert only if service startup type is automatic | This may only be set to 'True' or 'False'. If set to 'False', then alerts will be triggered, no matter what the startup type is set to. Default is 'True'. | Yes |
Enabled | Enables or disables the workflow | Yes |
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. | 60 |
Number of samples | Health State changes, if the number of subsequent check failures is greater than or equal to the Minimum Number of Checks. | 15 |
Synchronization Time | The synchronization time specified by using a 24-hour format. May be omitted. |
|
Timeout (seconds) | Specifies the time the workflow is allowed to run before being closed and marked as failed. | 300 |
Target | Microsoft.SQLServer.2008.AnalysisServices.Instance | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2008.AnalysisServices.MonitorType.Instance.ServiceState | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2008.AnalysisServices.UnitMonitor.Instance.ServiceState" Accessibility="Public" Enabled="true" Target="SQLAS!Microsoft.SQLServer.2008.AnalysisServices.Instance" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.AnalysisServices.MonitorType.Instance.ServiceState" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.AnalysisServices.UnitMonitor.Instance.ServiceState.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2008.AnalysisServices.ServerRole"]/InstanceName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Running" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="NotRunning" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<ServiceName>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2008.AnalysisServices.Instance"]/ServiceName$</ServiceName>
<ClusteredInstance>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2008.AnalysisServices.Instance"]/Clustered$</ClusteredInstance>
<CheckStartupType>true</CheckStartupType>
<SampleCount>15</SampleCount>
<IntervalSeconds>60</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>