SSAS 인스턴스의 Windows 서비스가 구성된 임계값을 초과하는 기간 동안 실행 중 상태가 아닌 경우 모니터가 알림을 제공합니다.
SSAS 인스턴스의 Windows 서비스가 구성된 임계값을 초과하는 기간 동안 실행 중 상태가 아닌 경우 모니터가 알림을 제공합니다.
이 모니터가 "SQL Server Analysis Service Windows 서비스가 실행 중이 아님" 알림을 보고하는 경우 SSAS 인스턴스가 자동으로 시작하도록 구성되었으나 구성된 임계값을 초과하는 기간 동안 중지됨 상태로 있음을 나타냅니다. 기본 구성 값은 900초(15분)입니다.
서비스가 중지되는 경우 구성된 기간 전에 모니터가 알림을 트리거하지 않습니다. 따라서 관리자는 알림을 트리거하지 않고 서비스를 다시 시작할 수 있습니다. 그러나 이후 구성된 기간 내에 서비스가 실행 중 상태가 되지 않는 경우 알림이 트리거됩니다.
SSAS Windows 서비스는 자동으로 시작하도록 구성된 경우라도 프로세스 시작 오류, 시작할 수 없는 운영 체제 문제, 서비스 계정 인증 오류 등 여러 가지 이유로 시작되지 않을 수 있습니다.
이 알림을 해결하려면 관리자가 정상적인 예상 인스턴스 시작 시간, 예기치 않은 서비스 시작 오류 원인, 서버의 인증 요구 사항, 환경의 상태 등 여러 요인을 이해하고 고려해야 합니다.
인스턴스 시작 시간은 데이터베이스 크기 및 다른 요인에 따라 다를 수 있습니다. 관리자가 적절하게 이 설정을 구성하여 지정된 SSAS 인스턴스의 정상적인 예상 시작 시간에 맞게 조정할 수 있습니다.
SSAS 서비스가 시작되지 않은 경우 또는 시도했으나 시작하지 않은 경우 이러한 상태를 수정할 조치는 다음과 같습니다.
SSAS 서비스 시작을 시도합니다.
Windows 시스템 및 응용 프로그램 이벤트 로그에 근본 원인이 나타나는지 검토합니다.
다음과 같은 근본 원인의 증거가 포함되어 있을 수 있는 인스턴스의 OLAP\Log 폴더를 검토합니다.
크래시 덤프(.mdmp 파일)에는 오류 시 프로세스에 있는 스레드의 스택 추적이 포함되어 있을 수 있습니다. 또는 적절하게 구성된 경우 프로세스 메모리 공간의 전체 내용을 Microsoft 지원에서 조사하여 근본 원인을 판별할 수 있습니다. 특히 덤프의 타임스탬프에 유의하여 오류와 일치하는지 확인하는 것은 폴더의 특정 크래시 덤프가 알려진 특정 오류와 일치하는지 알아보는 좋은 방법입니다.
비행 레코더 추적은 서버의 최소 추적이나 근본 원인을 나타내는 정보가 포함되어 있을 수 있습니다.
Msmdsrv.log에는 근본 원인을 나타내는 세부 정보가 포함되어 있을 수 있습니다.
성능 모니터, SQL Server Profiler 또는 Network Monitor와 같이 다른 추적 도구 또는 유틸리티를 사용하여 근본 원인을 나타낼 수 있는 잠재적 문제를 검색합니다.
SQL Server 설치 프로그램을 사용하여 손상된 인스턴스를 복구합니다.
프로세스 모니터 도구를 사용하여 서비스를 시작하려고 시도하는 중 SSAS 서비스 프로세스(msmdsrv.exe)의 파일 및 레지스트리 액세스를 추적합니다. 오류가 발생하는 초기화 중에 프로세스가 요구하는 데이터에 액세스하려고 시도하는 경우 권한 오류가 발생하면 표시될 수 있습니다.
서비스 제어판에서 서비스 구성을 확인하여 SSAS 구성 파일의 위치가 올바른지 확인합니다. 서비스 시작을 위한 명령줄은 해당 속성 페이지의 일반 탭에 표시되며 서비스를 마우스 오른쪽 단추로 클릭하여 액세스할 수 있습니다.
Microsoft 지원에 문의하여 시작할 서비스의 예기치 않은 오류를 조사합니다.
서버에서 SSAS 서비스 상태가 별로 중요하지 않을 경우 모니터를 완전히 사용하지 않도록 설정합니다.
이름 | 설명 | 기본값 |
서비스 시작 유형이 자동인 경우에만 경고를 발생시킵니다. | 이 값은 'True' 또는 'False'로만 설정될 수도 있습니다. 'False'로 설정하면 설정된 시작 유형에 관계없이 알림이 트리거됩니다. 기본값은 'True'입니다. | 예 |
사용 | 워크플로를 사용하거나 사용하지 않도록 설정합니다. | 예 |
알림 생성 | 워크플로의 알림 생성 여부 정의 | 예 |
간격(초) | 워크플로를 실행하는 반복 시간 간격(초)입니다. | 60 |
샘플 수 | 후속 확인 오류 수가 최소 확인 수보다 크거나 같은 경우 상태가 변경됩니다. | 15 |
동기화 시간 | 24시간 형식으로 지정된 동기화 시간입니다. 생략될 수 있습니다. |
|
시간 제한(초) | 워크플로를 닫고 실패로 표시하기 전에 워크플로를 실행할 수 있는 시간을 지정합니다. | 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>