ヘッダをスキップ
Oracle® Fusion Middleware Oracle WebLogic Server 診断フレームワークのコンフィグレーションと使い方
11g リリース 1 (10.3.1)
B55523-01
 

目次へ
目次

戻る
戻る
 
次へ
次へ
 

8 監視のコンフィグレーション

以下の節では、監視の種類とそれぞれのコンフィグレーション オプションについて説明します。

Administration Console を使用して監視の作成については、『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「診断システム モジュール用の監視の作成」を参照してください。

監視の種類

WLDF では、何をモニタするかによって 3 種類の監視を使用できます。

診断モジュールの WLDF システム リソース コンフィグレーション ファイルでは、各種類の監視は、<watch> の子要素である <rule-type> 要素で定義されます。次に例を示します。

    <watch>
      <rule-type>Harvester</rule-type>
      <!-- 他のコンフィグレーション要素-->
    </watch>

ルールの種類が異なる監視では、以下の 2 つの点に違いがあります。

すべての種類の監視で共有されるコンフィグレーション オプション

どの監視でも共有されるコンフィグレーション オプションは以下のとおりです。

ハーベスタ監視のコンフィグレーション

ハーベスタ監視では、ローカル実行時 MBean サーバの任意の実行時 MBean をモニタできます。


注意 :

ハーベスタがデータを収集しないようにコンフィグレーションされている MBean (または MBean 属性) をモニタする監視ルールを定義している場合、監視は実行されます。ハーベスタは、定義された監視ルールで設定された要件を満たす値を「暗黙的」に収集します。ただし、この方法で (つまり、監視用に暗黙的に) 収集されたデータはアーカイブされません。ハーベスタ の詳細については、「メトリック収集用のハーベスタのコンフィグレーション」を参照してください。

ハーベスタ監視は、ハーベスタ サイクルに応じてトリガされます。そのためハーベスタ監視の場合、ハーベスタのサンプル期間は、ある状況が識別されてから、通知によって報告されるまでの間隔を定義します。平均して、この遅延はサンプル期間/2 になります。

コード リスト 8-1 に、複数の実行時 MBean をモニタするハーベスタ監視のコンフィグレーション例を示します。監視ルール (<rule-expression> 要素で定義) の評価が true の場合、JMX 通知、SMTP 通知、SNMP 通知、イメージ通知、およびトピック用とキュー用の JMS 通知の 6 種類の通知が発動されます。

監視ルールは、4 つのハーベスタ変数で構成される論理式です。監視ルールの形式は次のとおりです。

    ( (A >= 100) AND (B > 0) ) OR C OR D.equals("active")

各変数の形式は次のとおりです。

    {entityName}//{attributeName}

{entityName} は、実行時 MBean サーバに登録されている JMX の ObjectName またはハーベスタで定義されている型名、{attributeName} は、その MBean 型に定義されている属性の名前です。


注意 :

比較演算子は、XML で有効となるように適切な形をとっています。

コード リスト 8-1 ハーベスタ監視のコンフィグレーションのサンプル (DIAG_MODULE.xml 内)

<wldf-resource xmlns="http://xmlns.oracle.com/weblogic/weblogic-diagnostics" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-diagnostics/1.0/weblogic-diagnostics.xsd">
  <name>mywldf1</name> 
  <harvester>
  <!-- ハーベスタ監視に対して必ずしも収集をコンフィグレーションおよび有効化
       しなくてもよい。ただし、ハーベスタをコンフィグレーションすると、データのアーカイブなどの利点がある。-->
    <harvested-type>
      <name>myMBeans.MySimpleStandard</name>
      <harvested-instance>myCustomDomain:Name=myCustomMBean1
      </harvested-instance>
      <harvested-instance>myCustomDomain:Name=myCustomMBean2
      </harvested-instance>
    </harvested-type>
    <!-- 他のハーベスタ コンフィグレーション要素 -->
  </harvester>
  <watch-notification>
    <watch>
      <name>simpleWebLogicMBeanWatchRepeatingAfterWait</name>
      <enabled>true</enabled>
      <rule-type>Harvester</rule-type>
      <rule-expression>
       (${mydomain:Name=WLDFHarvesterRuntime,ServerRuntime=myserver,Type=
       WLDFHarvesterRuntime,WLDFRuntime=WLDFRuntime//TotalSamplingTime}
          &gt;= 100
           AND
          ${mydomain:Name=myserver,Type=
                   ServerRuntime//OpenSocketsCurrentCount} &gt; 0)
           OR
         ${mydomain:Name=WLDFWatchNotificationRuntime,ServerRuntime=
             myserver,Type=WLDFWatchNotificationRuntime,
               WLDFRuntime=WLDFRuntime//Enabled} = true
           OR
         ${myCustomDomain:Name=myCustomMBean3//State} =
                 'active')
      </rule-expression>
      <severity>Warning</severity>
      <alarm-type>AutomaticReset</alarm-type>
      <alarm-reset-period>10000</alarm-reset-period>
      <notification>myJMXNotif,myImageNotif,
         myJMSTopicNotif,myJMSQueueNotif,mySNMPNotif,
         mySMTPNotif</notification>
    </watch>
    <!-- 他の watch-notification のコンフィグレーション要素 -->
  </watch-notification>
</wldf-resource>

この監視では、AutomaticReset タイプのアラームを使用しています。つまり、最後に発動されたときからの時間が、アラーム リセット期間として設定された間隔 (この場合 10000 ミリ秒) よりも長くなると、繰り返しトリガされる可能性があります。

指定された重大度レベル Warning は、監視のトリガには影響しませんが、通知によって伝達されます。

ログ監視のコンフィグレーション

ログ監視を使用して、サーバ ログにおける特定のメッセージまたは文字列の出現をモニタします。この種類の監視は、指定されたデータを含むログ メッセージが発行されるとトリガされます。

コード リスト 8-2 に、ログ監視のコンフィグレーションの例を示します。

コード リスト 8-2 ログ監視のコンフィグレーションのサンプル (DIAG_MODULE.xml ない)

<wldf-resource xmlns="http://xmlns.oracle.com/weblogic/weblogic-diagnostics" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-diagnostics/1.0/weblogic-diagnostics.xsd"> 
  <name>mywldf1</name> 
  <watch-notification> 
    <enabled>true</enabled> 
    <log-watch-severity>Info</log-watch-severity> 
    <watch> 
      <name>myLogWatch</name> 
      <rule-type>Log</rule-type> 
      <rule-expression>MSGID='BEA-000360'</rule-expression> 
      <severity>Info</severity> 
      <notification>myMailNotif2</notification> 
    </watch>
    <smtp-notification> 
      <name>myMailNotif2</name> 
      <enabled>true</enabled> 
      <mail-session-jndi-name>myMailSession</mail-session-jndi-name> 
      <subject>This is a log alert</subject> 
      <recipient>username@emailservice.com</recipient> 
    </smtp-notification> 
  </watch-notification> 
</wldf-resource> 

インスツルメンテーション監視のコンフィグレーション

インスツルメンテーション監視は、WLDF のインスツルメンテーション コンポーネントに由来するイベントをモニタするために使用します。この種類の監視は、イベントがポストされるとトリガされます。

コード リスト 8-3 に、インスツルメンテーション監視のコンフィグレーションの例を示します。

コード リスト 8-3 インスツルメンテーション監視のコンフィグレーションのサンプル (DIAG_MODULE.xml 内)

  <watch-notification>
    <watch>
    <name>myInstWatch</name>
    <enabled>true</enabled>
    <rule-type>EventData</rule-type>
    <rule-expression>
      (PAYLOAD &gt; 100000000) AND (MONITOR = 'Servlet_Around_Service')
    </rule-expression>
    <alarm-type xsi:nil="true"></alarm-type>
    <notification>mySMTPNotification</notification>
  </watch>
  <smtp-notification>
    <name>mySMTPNotification</name>
    <enabled>true</enabled>
    <mail-session-jndi-name>myMailSession</mail-session-jndi-name>
    <subject xsi:nil="true"></subject>
    <body xsi:nil="true"></body>
    <recipient>username@emailservice.com</recipient>
  </smtp-notification>
</watch-notification>

監視ルール式の定義

監視ルール式は、ルールの指定に必要なすべての情報をカプセル化します。各種類の監視ルールの定義に使用するクエリ言語については、「WLDF クエリ言語」を参照してください。