WebLogic 診断フレームワークのコンフィグレーションと使い方

     前  次    新しいウィンドウで目次を開く     
ここから内容の開始

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

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

 


監視の種類

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) && (B > 0) ) || C || D.equals("active")

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

    {entityName}//{attributeName}

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

注意 : 比較演算子は、XML で有効となるように適切な形をとっています。
コード リスト 8-1 ハーベスタ監視のコンフィグレーションのサンプル (DIAG_MODULE.xml 内)
<wldf-resource xmlns="http://www.bea.com/ns/weblogic/90/diagnostics" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.bea.com/ns/weblogic/90/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}
          >= 100
           AND
          ${mydomain:Name=myserver,Type=
                   ServerRuntime//OpenSocketsCurrentCount} > 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://www.bea.com/ns/weblogic/90/diagnostics" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.bea.com/ns/weblogic/90/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 クエリ言語」を参照してください。


ページの先頭       前  次