Monitora lo stato della versione attiva delle applicazioni distribuite per un server applicazioni WebLogic 10gR3.
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:
com.bea:Type=ApplicationRuntime,*
Un avviso indica che l'applicazione monitorata è in stato PREPARED o UNPREPARED.
Le applicazioni in stato di avviso non vengono distribuite attivamente. Utilizzare la console WebLogic per completare il processo di distribuzione per l'applicazione.
Target | Microsoft.JEE.WebLogic.10gR3.Application | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.JEE.Deep.Application.TwoState.Query.AvailabilityHealth.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<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>&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>