Windows 서비스 상태

Microsoft.SQLServer.2016.ReportingServices.UnitMonitor.WindowsServiceState (UnitMonitor)

SSRS Windows 서비스가 임계값보다 오래 실행 중 상태가 아닌 경우 모니터가 알림을 제공합니다.

Knowledge Base article:

요약

이 모니터는 SQL Reporting Services Windows 서비스의 상태를 확인합니다.

원인

이 모니터의 상태가 "실행 중이 아님"인 경우 SQL Reporting Services 서비스가 자동으로 시작되도록 구성되어 있지만 특정 기간 동안 "중지됨" 상태였음을 나타냅니다. 이 기간은 모니터 속성에 정의되어 있으며 재정의할 수 있습니다. 기본적으로 이 값은 900초(15분)입니다. SQL Reporting Services가 이 시간보다 빠르게 "실행 중" 상태로 다시 전환되는 경우 이 값이 다시 설정된 것입니다.

이 모니터가 특정 환경에서 너무 많이 사용되는 경우 "사용할 수 없는 시간"을 지정하세요. 그렇지 않고 너무 적게 사용되는 경우 "사용할 수 없는 시간" 값을 줄이세요.

일반적으로 Windows 서비스는 다음과 같은 여러 가지 이유로 중지될 수 있습니다.

해결 방법

다음 링크를 통해 이 문제와 관련될 수 있는 이 SQL Reporting Services™ 인스턴스에 대한 다른 알림을 검토할 수 있습니다.

SQL Reporting Services 알림 보기

재정의 가능한 매개 변수

이름

설명

기본값

서비스 시작 유형이 자동인 경우에만 알림을 발생시킵니다.

이 값은 'true' 또는 'false'로만 설정할 수 있습니다. 이 매개 변수가 'false'로 설정된 경우 워크플로가 서비스의 현재 시작 유형 설정을 고려하지 않습니다. 기본값은 'true'입니다.

사용

워크플로를 사용하거나 사용하지 않도록 설정

알림 생성

워크플로가 알림을 생성하는지 정의

간격(초)

워크플로를 실행하는 반복 시간 간격(초)입니다.

60

샘플 수

상태가 변경되기 전 측정된 값이 임계값을 위반한 횟수를 나타냅니다.

15

동기화 시간

24시간 형식으로 지정된 동기화 시간입니다. 생략될 수 있습니다.

 

시간 제한(초)

워크플로를 닫고 실패로 표시하기 전에 워크플로를 실행할 수 있는 시간을 지정합니다.

300

Element properties:

TargetMicrosoft.SQLServer.2016.ReportingServices.Instance
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2016.ReportingServices.MonitorType.Instance.WindowsServiceState
RemotableTrue
AccessibilityPublic
Alert Message
SSRS 2016: Windows 서비스 중지됨
컴퓨터 {0}에서 Reporting Services 인스턴스 {1}의 Windows 서비스가 중지되었습니다.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2016.ReportingServices.UnitMonitor.WindowsServiceState" Accessibility="Public" Enabled="true" Target="SQLRS!Microsoft.SQLServer.2016.ReportingServices.Instance" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2016.ReportingServices.MonitorType.Instance.WindowsServiceState" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.ReportingServices.UnitMonitor.WindowsServiceState.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="SQLRS!Microsoft.SQLServer.2016.ReportingServices.Instance"]/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="SQLRS!Microsoft.SQLServer.2016.ReportingServices.Instance"]/ServiceName$</ServiceName>
<CheckStartupType>true</CheckStartupType>
<SampleCount>15</SampleCount>
<IntervalSeconds>60</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>