• 検索結果がありません。

: 通知フ ィ ルタの作成と登録

ドキュメント内 logging.book (ページ 40-45)

4 WebLogic Server ログからのメ ッ セージのリ スン

手順 3 : 通知フ ィ ルタの作成と登録

4 WebLogic Server

ログからの メ ッ セージの リ ス ン

手順

3 :

通知 フ ィ ル タ の作成 と 登録 前、 メ ッ セージ テキ ス ト など を取得でき ます。 詳細については、

WebLogicLogNotification

オブジ ェ ク ト」 を参照し て く だ さ い。

c.

ブールを使用し て 、 シ リ ア ラ イ ズ可能なオブジ ェ ク ト が true 値を返すか ど う かを示す。

d.

(省略可能) ブールの true に応じ てア ク シ ョ ンを実行する コー ド を挿入す る。 た と えば、 メ ッ セージの重大度が WARNING以上の場合にフ ィ ルタが

JavaMail API

を使用し て管理者に電子 メ ールを送信する よ う にでき ます。

3.

addNotificationListener

API を使用し てフ ィ ルタ を登録し ます。 詳細に

ついては、

4-8

ページの 「addNotificationListener API の使用」 を参照し てく だ さ い。

WebLogicLogNotification オブジ ェ ク ト

WebLogic Server

が生成するすべての メ ッ セージは、

weblogic.management.logging.WebLogicLogNotificationオブジ ェ ク ト と し て機能し ます。WebLogicLogNotification

オブジ ェ ク ト には以下のフ ィ ール

ド で構成さ れます。

タ イ プ —JMX 仕様で必要 と さ れる と お り に通知を識別する。 こ のフ ィ ール ド の形式は次の よ う にな り ます。

weblogic.logMessage.subSystem.messageID

こ こ で、subSystemはロ グ メ ッ セージ を発行し たサブシ ス テ ム ま たはアプ リ ケーシ ョ ンで、messageID

は WebLogic Server 内部の メ ッ セージ ID です。

注意

:

NonCatalogLogger メ ッ セージの場合、 メ ッ セージ ID は常に 000000 です。

タ イ ム ス タ ンプ — こ の通知の元 と な る ロ グ メ ッ セージがサーバによ って生 成さ れた時間。

連続番号

メ ッ セージ — ロ グ メ ッ セージ。

ユーザ データ — 現在は こ のフ ィ ール ド は使用さ れていません。

4 WebLogic Server

ログからの メ ッ セージの リ ス ン

WebLogicLogNotificationは、javax.management.Notificationか ら ゲ ッ ター メ ソ ッ ド 継承し、 ロ グ メ ッ セージ内のフ ィ ール ド ご と に 1 つのゲ ッ ター メ ソ ッ ド を提供し ます (図 4-4を参照 )。

こ れ ら のゲ ッ ター メ ソ ッ ド を使用する と 、WebLogicLogNotification内の情報 を検索または出力で き ます。 詳細については、

weblogic.management.logging.WebLogicLogNotification

Javadoc

を参照し て く だ さ い。

4-4 WebLogicLogNotification

ゲ ッ ター メ ソ ッ ド

WebLogicLogNotification

getServerName() Type

TimeStamp SequenceNumber Message

UserData ServerName ThreadId UserId Severity ...

getThreadId() getUserId() getSeverity() ...

Notification

getTimeStamp() getSequenceNumber() getMessage()

getUserData() ...

source

手順

3 :

通知 フ ィ ル タ の作成 と 登録

通知フ ィ ルタの例

コー ド リ ス ト 4-6に、WebLogicLogNotification.getType メ ソ ッ ド を使用す る NotificationFilterの例を示し ます。

コー ド リ ス ト

4-6

通知フ ィ ルタの例 import javax.management.Notification;

import javax.management.NotificationFilter;

import javax.management.Notification.*;

import weblogic.management.logging.WebLogicLogNotification;

....

public class MyLogNotificationFilter implements NotificationFilter, java.io.Serializable {

public MyLogNotificationFilter() { subsystem = "";

}

public boolean isNotificationEnabled(Notification notification) { if (!(notification instanceof WebLogicLogNotification)) {

return false;

}

WebLogicLogNotification wln = (WebLogicLogNotification)notification;

if (subsystem == null ||

subsystem.equals("")) { return true;

}

StringTokenizer tokens = new StringTokenizer(wln.getType(), ".");

tokens.nextToken();

tokens.nextToken();

return (tokens.nextToken().equals(subsystem));

}

public void setSubsystemFilter(String newSubsystem) { subsystem = newSubsystem;

} }

4 WebLogic Server

ログからの メ ッ セージの リ ス ン

索引

A

addNotificationListenerメソッド 4-8

Administration Console 3-1

ALERT重大度 2-12

C

Console

、Administration 3-1 CRITICAL重大度 2-12

E

EMERGENCY重大度 2-12 ERROR重大度 2-12

ExceptionNameメッセージ フィールド

2-10

G

GenericServlet

2-11

H

handleNotificationメソッド ローカル アプリケーション用 4-3 定義 4-1

I

INFO重大度 2-12

J

Java

クラス ファイル 2-4

Java

クラス ファイルのコンパイル 2-5

Java 仮想マシン。「リモート JVM」を参照 Java

パッケージ名 2-5

JMX 1-5 JSP

NotificationListeners

4-3

GenericServlet

2-11

NotificationListeners

4-5

メッセージ カタログ 2-6

L

LocalizedTimestamp

メッセージ フィー

ルド 2-10

Log4j 2-12

LogBroadcasterRuntimeMBean

オブジェ

オブジェクト名の取得 4-8クト

定義 4-1

LogBroadCasterRuntimeMBeanオブジェ クトのオブジェクト名 4-8–4-11

M

MachineNameメッセージ フィールド 取得 4-13

定義 2-10

Messageメッセージ フィールド 2-10, 4-13 MessageIdメッセージ フィールド

取得 4-13 定義 2-10

millisecondsFromEpochメッセージ フィールド 2-10

N

NonCatalogLoggerオブジェクト メッセージ ID 4-13

API 2-6

ドキュメント内 logging.book (ページ 40-45)

関連したドキュメント