Wielkość komunikatów

Microsoft.MSMQ.6.3.Monitor.QueueBytes.Baseline (UnitMonitor)

Służy do monitorowania wielkości komunikatów w kolejce w celu ustalania linii bazowej.

Knowledge Base article:

Podsumowanie

Ten monitor sprawdza rozmiar komunikatów w kolejce.

Konfiguracja

Te monitor jest domyślnie wyłączony. W celu umożliwienia działania należy go włączyć przez zastąpienie ustawień.

Zachowanie tego monitora można zmodyfikować przez zastąpienie ustawień następujących parametrów.

Stan generowania alertu

Stan, w którym zostaje wygenerowany alert.

Priorytet alertu

Priorytet alertu.

Waga alertu

Waga alertu.

Automatyczne rozwiązywanie alertu

Jeśli wartość znajdzie się poniżej wartości progowej, nastąpi automatyczne rozwiązanie alertu.

Włączone

Określa, czy monitor jest włączony.

Generuje alert

Określa, czy monitor generuje alert po osiągnięciu progu.

Czułość wewnętrzna

Ustawienie czułości wewnętrznej progu strojenia własnego.

Interwał czasowy w sekundach

Liczba sekund między uruchomieniami testu. Ustawienie zbyt niskiej wartości może spowodować nadmierne obciążenie usługi MSMQ. Natomiast w przypadku ustawienia zbyt wysokiej wartości błąd może nie zostać wykryty w odpowiednim czasie. Ustawieniem domyślnym jest 120 sekund (co oznacza uruchamianie testu raz na 2 minuty).

Czułość zewnętrzna

Ustawienie czułości zewnętrznej progu strojenia własnego.

Limit czasu w sekundach

Liczba sekund działania operacji, zanim zostanie ona przerwana przed ukończeniem.

Przyczyny

W przypadku normalnego działania aplikacje powinny odbierać komunikaty natychmiast po ich dodaniu do kolejki. Rozmiar tych komunikatów powoduje przyrost linii bazowej. Jeśli aplikacja zacznie odbierać komunikaty powyżej linii bazowej, może to oznaczać zmianę w aplikacji wysyłającej komunikaty.

Rozwiązania

Sprawdź aplikację i kolejkę wysyłającą komunikaty o tym rozmiarze w celu zweryfikowania, czy jest to oczekiwane zachowanie.

Element properties:

TargetMicrosoft.MSMQ.6.3.Queues
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.MSMQ.6.3.Queue.TwoStateBaseliningMonitorWithoutCompression
RemotableTrue
AccessibilityPublic
Alert Message
Alert liczby komunikatów w kolejce
Szczegóły można znaleźć w kontekście alertu.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.MSMQ.6.3.Monitor.QueueBytes.Baseline" Accessibility="Public" Enabled="false" Target="Microsoft.MSMQ.6.3.Queues" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.MSMQ.6.3.Queue.TwoStateBaseliningMonitorWithoutCompression" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.MSMQ.6.3.Monitor.QueueMessageCount.Baseline.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="BelowNormal" MonitorTypeStateID="Below" HealthState="Success"/>
<OperationalState ID="AboveNormal" MonitorTypeStateID="Above" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<SignatureID>Microsoft.MSMQ.6.3.Monitor.QueueBytes.Baseline.Signature</SignatureID>
<DataSourceSettings>
<IntervalSeconds>600</IntervalSeconds>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<QueuePath>$Target/Property[Type="Microsoft.MSMQ.6.3.Queue"]/PathName$</QueuePath>
<CounterName>KBytes In Queue</CounterName>
<LogDetail>false</LogDetail>
<TimeoutSeconds>300</TimeoutSeconds>
</DataSourceSettings>
<LearningAndBaseliningSettings>
<BusinessCycleLengthUnit>Day</BusinessCycleLengthUnit>
<BusinessCycleLengthInGivenUnit>1</BusinessCycleLengthInGivenUnit>
<LearningType>Continuous</LearningType>
<Offset1>3</Offset1>
<Offset2>3</Offset2>
<Offset3>3</Offset3>
<LearningRate>2</LearningRate>
<InitialNoAlertPeriodInBizCycles>1</InitialNoAlertPeriodInBizCycles>
<OuterSensitivity>3.31</OuterSensitivity>
<InnerSensitivity>2.81</InnerSensitivity>
</LearningAndBaseliningSettings>
<SignatureCollectionSettings>
<DBUpdatePeriodInSeconds>900</DBUpdatePeriodInSeconds>
</SignatureCollectionSettings>
</Configuration>
</UnitMonitor>