Der Monitor warnt, wenn der Windows-Dienst für die SSAS-Instanz schon länger nicht ausgeführt wird als für den Schwellenwert konfiguriert.
Der Monitor warnt, wenn der Windows-Dienst für die SSAS-Instanz schon länger nicht ausgeführt wird als für den Schwellenwert konfiguriert.
Wenn dieser Monitor die Warnung “Windows-Dienst für SQL Server Analysis Services wird nicht ausgeführt” ausgibt, ist dies ein Hinweis darauf, dass die SSAS-Instanz für den automatischen Start konfiguriert wurde, jedoch für einen Zeitraum im Status "Beendet" verblieben ist, der den konfigurierten Schwellenwert überschreitet. Standardmäßig sind 900 Sekunden (15 Minuten) konfiguriert.
Der Monitor löst die Warnung nicht vor Ablauf des konfigurierten Zeitraums aus, wenn der Dienst beendet wurde. Dadurch kann ein Administrator den Dienst neu starten, ohne die Warnung auszulösen. Wird der Dienst jedoch nicht innerhalb des konfigurierten Zeitraums wieder in den ausgeführten Status versetzt, wird die Warnung ausgelöst.
Fehler beim Starten des Windows-Diensts von SSAS, auch bei einer Konfiguration für den automatischen Start, können aus zahlreichen Gründen auftreten. Möglich sind z. B. Fehler beim Starten des Prozesses, Probleme beim Betriebssystem, durch die ein erfolgreicher Start verhindert wird, oder Authentifizierungsfehler beim Dienstkonto.
Um diese Warnung auflösen zu können, müssen Administratoren zahlreiche Faktoren kennen und berücksichtigen, wie z. B. die normalerweise erwartete Startzeit für die Instanz, Ursachen für unerwartete Fehler beim Starten des Diensts, die Authentifizierungsanforderungen für den Server sowie die Bedingungen in der Umgebung.
Die Startzeiten von Instanzen können abhängig von der Größe der Datenbank und anderen Faktoren variieren. Administratoren können diese Einstellung entsprechend den Startzeiten konfigurieren, die für eine bestimmte SSAS-Instanz normalerweise erwartet werden.
Gegenmaßnahmen, wenn der SSAS-Dienst nicht gestartet wurde (bzw. nicht gestartet werden kann):
Versuchen Sie, den SSAS-Dienst zu starten.
Überprüfen Sie die Windows-Ereignisprotokolle für System und Anwendung auf Hinweise zur Ursache.
Überprüfen Sie den Ordner "OLAP\Log" der Instanz. Der Ordner enthält möglicherweise Anhaltspunkte für die Ursache wie z. B.:
Absturzabbilder (MDMP-Dateien), die ggf. Stapelüberwachungen von den Threads im Prozess zum Zeitpunkt des Fehlers oder bei entsprechender Konfiguration den gesamten Inhalt des Prozessspeicherbereichs enthalten. Der Microsoft Support kann anhand dieser Daten möglicherweise die Ursache ermitteln. Insbesondere anhand der Zeitstempel von Abbildern lässt sich gut erkennen, ob ein bestimmtes Abbild im Ordner ggf. einem bestimmten bekannten Fehler entspricht.
Flight Recorder-Ablaufverfolgungen – minimale Ablaufverfolgungen des Servers, die manchmal Informationen zur Ursache enthalten.
Die Datei "Msmdsrv.log" enthält möglicherweise Details, die auf die Ursache hinweisen.
Verwenden Sie andere Ablaufverfolgungstools oder Hilfsprogramme wie z. B. den Systemmonitor, SQL Server Profiler oder den Netzwerkmonitor, um mögliche Probleme zu ermitteln, die auf die Ursache hinweisen können.
Verwenden Sie SQL Server-Setup, um die beschädigte Instanz zu reparieren.
Verwenden Sie die Prozessüberwachung, um den Datei- und Registrierungszugriff durch den SSAS-Dienstprozess (msmdsrv.exe) während des Startversuchs für den Dienst zu verfolgen. Auf diese Weise kann aufgedeckt werden, ob beim Zugriffsversuch auf Daten, die der Prozess für die Initialisierung des Diensts benötigt, ein Berechtigungsfehler auftritt, wodurch der Fehler verursacht wird.
Überprüfen Sie in der Systemsteuerungsoption "Dienste" die Dienstkonfiguration, und stellen Sie sicher, dass der Speicherort der SSAS-Konfigurationsdatei richtig ist. Die Befehlszeile zum Starten des Diensts wird auf der Registerkarte "Allgemein" der Eigenschaftenseite angezeigt, die per Rechtsklick auf den Dienst geöffnet werden kann.
Wenden Sie sich an den Microsoft Support, um einen unerwarteten Startfehler des Diensts zu untersuchen.
Deaktivieren Sie den Monitor ganz, wenn der Status des SSAS-Diensts auf dem Server nicht relevant ist.
Starten und Beenden von Diensten
Name | Beschreibung | Standardwert |
Nur warnen, wenn der Starttyp des Diensts automatisch erfolgt | Diese Einstellung kann nur auf "true" oder "false" festgelegt werden. Ist diese Einstellung auf "false" festgelegt, werden Warnungen unabhängig vom festgelegten Starttyp ausgelöst. Der Standardwert ist "true". | Ja |
Aktiviert | Aktiviert oder deaktiviert den Workflow | Ja |
Generiert Warnungen | Definiert, ob der Workflow eine Warnung generiert | Ja |
Intervall (Sekunden) | Das periodische Intervall in Sekunden, in dem der Workflow ausgeführt werden soll. | 60 |
Anzahl der Stichproben | Der Integritätsstatus ändert sich, wenn die Anzahl von aufeinanderfolgenden Überprüfungsfehlern höher als die Mindestanzahl von Überprüfungen ist oder dieser entspricht. | 15 |
Synchronisierungszeit | Die in einem 24-Stunden-Format angegebene Synchronisierungszeit. Kann ausgelassen werden. |
|
Timeout (Sekunden) | Gibt die Zeit an, die der Workflow ausgeführt werden darf, bevor er geschlossen und als fehlgeschlagen markiert wird. | 300 |
Target | Microsoft.SQLServer.2016.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.2016.AnalysisServices.MonitorType.Instance.ServiceState | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2016.AnalysisServices.UnitMonitor.Instance.ServiceState" Accessibility="Public" Enabled="true" Target="SQLAS!Microsoft.SQLServer.2016.AnalysisServices.Instance" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2016.AnalysisServices.MonitorType.Instance.ServiceState" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.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.2016.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.2016.AnalysisServices.Instance"]/ServiceName$</ServiceName>
<ClusteredInstance>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2016.AnalysisServices.Instance"]/Clustered$</ClusteredInstance>
<CheckStartupType>true</CheckStartupType>
<SampleCount>15</SampleCount>
<IntervalSeconds>60</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>