Stato versione attiva

Microsoft.JEE.WebLogic.10gR3.Deep.Application.ActiveVersionState.AvailabilityHealth.UnitMonitor (UnitMonitor)

Monitora lo stato della versione attiva delle applicazioni distribuite per un server applicazioni WebLogic 10gR3.

Knowledge Base article:

Riepilogo

Il monitoraggio stato di disponibilità dello stato della versione attiva dell'applicazione tiene traccia dello stato della versione attiva del runtime dell'applicazione. La query utilizzata per tutti i runtime dell'applicazione disponibili è la seguente:

Cause

Un avviso indica che l'applicazione monitorata è in stato PREPARED o UNPREPARED.

Risoluzioni

Le applicazioni in stato di avviso non vengono distribuite attivamente. Utilizzare la console WebLogic per completare il processo di distribuzione per l'applicazione.

Element properties:

TargetMicrosoft.JEE.WebLogic.10gR3.Application
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.JEE.Deep.Application.TwoState.Query.AvailabilityHealth.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
L'applicazione non è attivata
L'applicazione '{3}' non è attivata. Questa applicazione può essere identificata mediante ObjectName '{2}' nel computer {1} per l'ID del server applicazioni '{0}'.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.JEE.WebLogic.10gR3.Deep.Application.ActiveVersionState.AvailabilityHealth.UnitMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.JEE.WebLogic.10gR3.Application" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="JEE!Microsoft.JEE.Deep.Application.TwoState.Query.AvailabilityHealth.MonitorType" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.JEE.WebLogic.10gR3.Deep.Application.ActiveVersionState.AvailabilityHealth.UnitMonitor_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<!-- The alert description should include key properties of: -->
<!-- * the application server id -->
<!-- * the application hostname -->
<!-- * the application object name-->
<!-- * the application name -->
<AlertParameter1>$Target/Host/Property[Type="JEE!Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Id$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="JEE!Microsoft.JEE.ApplicationServer.Monitored.Instance"]/HostName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="JEE!Microsoft.JEE.Application"]/ObjectName$</AlertParameter3>
<AlertParameter4>$Target/Property[Type="JEE!Microsoft.JEE.Application"]/ApplicationName$</AlertParameter4>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Healthy" MonitorTypeStateID="Healthy" HealthState="Success"/>
<OperationalState ID="NotHealthy" MonitorTypeStateID="NotHealthy" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="JEE!Microsoft.JEE.ApplicationServer.Monitored.Instance"]/HostName$</ComputerName>
<Protocol>$Target/Host/Property[Type="JEE!Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Protocol$</Protocol>
<Port>$Target/Host/Property[Type="JEE!Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Port$</Port>
<BaseURL/>
<JMXQuery>com.bea:Type=ApplicationRuntime,*</JMXQuery>
<AdditionalArguments>&amp;MaxDepth=2</AdditionalArguments>
<RequestBody/>
<!-- This will query all of the available MBeans and -->
<!-- look for the right MBean and update the state as stated -->
<!-- in the SPEC for WebLogic: -->
<!-- * Healthy : ActiveVersionState == Active -->
<!-- * Warning : ActiveVersionState == Prepared || -->
<!-- ActiveVersionState == Unprepared -->
<HealthyExpression>
<SimpleExpression>
<ValueExpression>
<!-- The XPATH if it were applied directly against the XML in a browser should look like: -->
<!-- /MBeans/weblogic.j2ee.J2EEApplicationRuntimeMBeanImpl/Properties/ActiveVersionState[../ApplicationName = "SimpleApplication"] -->
<XPathQuery Type="String">MBeans/MBean[@Name='weblogic.j2ee.J2EEApplicationRuntimeMBeanImpl']/Properties/Property[@Name='ActiveVersionState' and ../Property[@Name='ApplicationName']="$Target/Property[Type="JEE!Microsoft.JEE.Application"]/ApplicationName$"]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<!-- 2 == Active -->
<Value Type="String">2</Value>
</ValueExpression>
</SimpleExpression>
</HealthyExpression>
<NotHealthyExpression>
<SimpleExpression>
<ValueExpression>
<!-- The XPATH if it were applied directly against the XML in a browser should look like: -->
<!-- /MBeans/weblogic.j2ee.J2EEApplicationRuntimeMBeanImpl/Properties/ActiveVersionState[../ApplicationName = "SimpleApplication"] -->
<XPathQuery Type="String">MBeans/MBean[@Name='weblogic.j2ee.J2EEApplicationRuntimeMBeanImpl']/Properties/Property[@Name='ActiveVersionState' and ../Property[@Name='ApplicationName']="$Target/Property[Type="JEE!Microsoft.JEE.Application"]/ApplicationName$"]</XPathQuery>
</ValueExpression>
<!-- Not looking for Active state, which implies that the state must either -->
<!-- be PREPARED or UNPREPARED. -->
<Operator>NotEqual</Operator>
<ValueExpression>
<!-- 2 == Active -->
<Value Type="String">2</Value>
</ValueExpression>
</SimpleExpression>
</NotHealthyExpression>
<IntervalSeconds>900</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>