Send Queue \% Used

Microsoft.SystemCenter.HealthService.Performance.SendQueuePercentUsedMonitor (UnitMonitor)

이 모니터는 상태 서비스의 Health Service Management Groups\Send Queue \% Used 카운터를 측정합니다.

Knowledge Base article:

요약

이 모니터는 Health Service Management Groups\Send Queue % Used를 측정하고 다음 상태를 생성합니다.

모니터 상태

Send Queue % Used 임계값

위험

60 %

원인

이 문제는 이 System Center 관리 상태 서비스와 부모 관리 서버 간의 대역폭이 낮거나 연결 대기 시간이 높은 경우 발생할 수 있습니다. 부모 관리 서버가 처리할 수 있는 것보다 많은 데이터를 수집하는 규칙이 있을 때 이러한 문제가 발생할 수도 있습니다. 특히 많은 에이전트가 부모 관리 서버로 보고하기 위해 대량의 데이터를 보낼 때 문제가 될 수 있습니다.

해결 방법

System Center 관리 상태 서비스에서 부모 관리 서버로의 네트워크 연결이 포화 상태인 경우에는 네트워크 관리자에게 문의하세요. 이 경우 트래픽을 수용하도록 네트워크를 업그레이드해야 할 수 있습니다.

네트워크를 업그레이드할 수 없는 경우(예: System Center 관리 상태 서비스나 게이트웨이 서비스가 원격 사무실에 있는 경우) 불필요한 수집 규칙을 사용하지 않도록 설정할 수 있습니다. 다음 목록에서는 사용하지 않도록 설정할 수 있는 규칙 유형 및 해당 규칙 유형을 사용하지 않을 때 미치는 영향을 보여 줍니다.

규칙 유형

규칙 용도

사용되지 않을 때 미치는 영향

성능 수집

운영 데이터베이스, 데이터 웨어하우스 또는 둘 다로 성능 데이터를 수집합니다.

성능 수집 규칙을 사용하지 않도록 설정하면 해당 성능 데이터를 표시하는 보기에서 더 이상 데이터를 볼 수 없습니다. 규칙이 데이터 웨어하우스로 데이터를 수집하는 경우 해당 성능과 관련된 보고서가 더 이상 데이터를 렌더링하지 않습니다.

이벤트 수집

진단을 위해 이벤트 데이터를 수집합니다. 일부의 경우, 이벤트가 문제를 사전에 경고하지 못하지만 불법적 문제를 해결하거나 문제를 거의 실시간으로 해결하는 데 도움이 될 수 있습니다.

이벤트 수집 규칙을 사용하지 않도록 설정하면 해당 이벤트 데이터를 표시하는 보기에서 더 이상 데이터를 볼 수 없습니다. 규칙이 데이터 웨어하우스로 데이터를 수집한 경우 해당 이벤트와 관련된 보고서가 더 이상 데이터를 렌더링하지 않습니다.

나중에 해당 데이터가 계속 필요할 경우, 최적화된 성능 카운터 수집 규칙 및 이벤트 통합 수집 규칙을 사용함으로써 네트워크를 통해 전송되는 데이터 양을 줄이는 방식을 사용할 수도 있습니다. 다음 표에서는 각 규칙의 이점과 데이터가 요약되는 방식을 보여 줍니다.

규칙 유형

이점

데이터 요약 방식

최적화된 성능 수집 규칙

특정 비율 한도 내에서 마지막 샘플에서 벗어날 경우에만 성능 데이터 샘플을 보냅니다. 예를 들어 마지막 샘플이 42이고 허용 오차 10% 내에서 새 샘플로만 수집하도록 규칙을 구성한 경우 다음 샘플은 42 +/- 4.2여야 합니다. 즉, 다음 샘플은 46.2보다 크거나 37.8보다 작아야 합니다.

구성된 허용 오차를 초과하는 성능 데이터만 운영 데이터베이스나 데이터 웨어하우스로 전송되므로 데이터의 정확도가 떨어집니다. 이 같이 허용 오차가 클수록 정확도는 떨어집니다.

통합된 이벤트 수집 규칙

이 유형의 이벤트 수집 규칙은 구성된 매개 변수 중 하나가 마지막 이벤트와 다를 경우 해당 데이터를 보냅니다. 예를 들어 다음 항목이 동일할 경우 이벤트를 통합하도록 통합 수집 규칙을 구성할 수 있습니다.

  • 이벤트 원본

  • 이벤트 ID

  • 원본 컴퓨터

  • 설명

이러한 이벤트를 통합하는 기간을 구성할 수 있습니다. 예를 들어 10분으로 구성하는 경우, 10분 내에 위의 조건과 일치하는 이벤트가 발생하면 반복 실행 횟수 속성이 증분되면서 1개의 이벤트만 전송됩니다. 단일 에이전트에서 이 이벤트가 자주 발생해도 24시간 내에 144번의 이벤트만 전송됩니다. 이 수치는 이벤트 로그에 실제로 기록되는 이벤트 수보다 훨씬 작은 것일 수 있습니다.

통합할 이벤트 매개 변수 및 속성을 잘 알고 있어야 합니다. 예를 들어 설명을 구성할 경우, 사용자 이름을 포함하는 등 이벤트 설명이 고유하면 여전히 많은 이벤트가 전송됩니다. 이러한 경우에는 사용자 이름 필드를 나타내는 이벤트 매개 변수로 대신 통합할 수 있습니다.

또한 통합 기간이 매우 길 경우 두 가지 영향이 있습니다.

  • 통합 기간이 끝날 때까지 데이터가 통합되어야 하기 때문에 이벤트 보기 또는 보고서에 이벤트가 표시되는 시간이 다소 지연됩니다.

  • 에이전트의 리소스 사용량이 약간 증가합니다. 사용하는 통합 규칙이 적을 때는 큰 영향을 미치지 않습니다. 이러한 규칙 유형이 많이 있고 통합 기간도 길다면 그에 따라 리소스 사용량도 증가하게 됩니다.

제품 도움말을 참조하거나 콘솔의 제작 공간으로 이동하여 위에서 언급한 규칙 유형을 만드세요.

Element properties:

TargetMicrosoft.SystemCenter.HealthService
Parent MonitorMicrosoft.SystemCenter.HealthService.PerformanceHealthRollup
CategoryPerformanceHealth
EnabledTrue
Instance NameHealth Service Management Groups
Counter NameSend Queue \% Used
Frequency60
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
{0}: 이 시스템의 상태 서비스 송신 큐가 가득 참
System Center 관리 상태 서비스가 데이터를 송신하는 것보다 빠르게 데이터를 수신할 경우 과도한 데이터 대기가 시작됩니다. 큐의 크기는 고정되어 있으며 해당 크기에 도달하는 경우 System Center 관리 상태 서비스가 큐에서 데이터를 영구 제거하기 시작합니다. 이 경고가 생성되었을 때 이 시스템의 "Send Queue \% Used" 카운터는 {0}입니다. 가능한 원인과 문제 해결 단계에 대한 자세한 내용은 기술 자료를 참조하세요.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.HealthService.Performance.SendQueuePercentUsedMonitor" Accessibility="Public" Enabled="true" Target="SCLibrary!Microsoft.SystemCenter.HealthService" ParentMonitorID="Microsoft.SystemCenter.HealthService.PerformanceHealthRollup" Remotable="true" Priority="Normal" TypeID="Performance!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.HealthService.Performance.SendQueuePercentUsedMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>High</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="BelowThreshold" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="OverThreshold" MonitorTypeStateID="ConditionTrue" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Send Queue % Used</CounterName>
<ObjectName>Health Service Management Groups</ObjectName>
<InstanceName>$Target/ManagementGroup/Name$</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>60</Frequency>
<Threshold>90</Threshold>
<Direction>greaterequal</Direction>
<NumSamples>5</NumSamples>
</Configuration>
</UnitMonitor>