Monitor serwera: Wyślij komunikat testowy

Microsoft.MSMQ.10.0.Monitor.Server.TestMessage (UnitMonitor)

Ten monitor testuje serwer, wysyłając komunikat testowy do kolejki. Odbiór komunikatu jest sprawdzany przez wysłanie odpowiedzi do kolejki administratora, po czym komunikat testowy i odpowiedź są usuwane.

Knowledge Base article:

Podsumowanie

Ten monitor testuje serwer, wysyłając komunikat testowy do kolejki.

Odbiór komunikatu jest sprawdzany przez wysłanie odpowiedzi do kolejki administratora, po czym komunikat testowy i odpowiedź są usuwane.

Ten monitor jest domyślnie wyłączony. Jego włączenie spowoduje dodanie kolejki testowej do monitorowanych serwerów, które będą monitorowane niezależnie. Nazwą domyślną tej kolejki jest: X.

Konfiguracja

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

IntervalSeconds

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 600 sekund (co oznacza wysyłanie komunikatu testowego raz na 10 minut).

TargetQueue

Nazwa ścieżki kolejki docelowej, do której ma zostać wysłany komunikat.

AdminQueue

Nazwa ścieżki kolejki administratora, do której ma zostać wysłany komunikat odpowiedzi.

CreateQueues

W przypadku ustawienia True kolejka docelowa i kolejka administratora zostaną automatycznie utworzone, jeśli jeszcze nie istnieją.

MessageBody

Tekst do umieszczenia w treści komunikatu testowego.

AppSpecific

Specyficzna dla aplikacji liczba całkowita długa służąca do jednoznacznej identyfikacji komunikatów programu Operations Manager.

Połączenie jest nawiązywane przy użyciu poświadczeń zdefiniowanych w profilu dostępu użytkownika do kolejki. Konto użytkownika powinno zapewniać dostęp do testowanych kolejek. Konfigurację tego konta można wykonać w sekcji Administracja w konsoli Operacje.

Przyczyny

Sprawdź informacje w alercie skojarzonym z tym monitorem oraz informacje zwrócone w zdarzeniu zmiany stanu. Dotyczy to także czynności w procesie zakończonym niepowodzeniem oraz określonym komunikatem o błędzie.

Element properties:

TargetMicrosoft.MSMQ.10.0.Servers
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.MSMQ.10.0.MonitorType.TestMessage
RemotableTrue
AccessibilityPublic
Alert Message
Serwer: Alert wysłania komunikatu testowego
Więcej informacji zawiera kontekst alertu.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.MSMQ.10.0.Monitor.Server.TestMessage" Accessibility="Public" Enabled="false" Target="Microsoft.MSMQ.10.0.Servers" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.MSMQ.10.0.MonitorType.TestMessage" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.MSMQ.10.0.Monitor.Server.TestMessage.AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="MessageFailed" MonitorTypeStateID="MessageFailed" HealthState="Error"/>
<OperationalState ID="MessageReceived" MonitorTypeStateID="MessageReceived" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>600</IntervalSeconds>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<TargetQueue>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$\private$\MSMQTestQueue</TargetQueue>
<AdminQueue>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$\private$\MSMQTestQueue</AdminQueue>
<CreateQueues>true</CreateQueues>
<AppSpecific>123456789</AppSpecific>
<MaxWaitTime>10</MaxWaitTime>
<MessageBody>Test message sent by Operations Manager.</MessageBody>
<RemoveMessage>true</RemoveMessage>
<CleanupQueue>true</CleanupQueue>
<CleanupAdminQueue>true</CleanupAdminQueue>
<LogDetail>false</LogDetail>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>