Oracle Containers for J2EE構成および管理ガイド 10g(10.1.3.1.0) B31849-01 |
|
この章では、OC4Jで使用できるシステムおよびアプリケーションのロギング機能の使用方法について説明します。この章の内容は次のとおりです。
各OC4Jプロセスでは、トラブルシューティングを支援するために多くのログ・ファイルが生成されます。1つのOC4Jインスタンスに対して複数のプロセスが稼働している場合、複数セットのログ・ファイルが生成されます。
OC4Jでは、次に示す2種類のログ・ファイルが生成されます。
プレーン・テキストのログは、OC4Jコンポーネントに使用されるデフォルトのログ・ファイルで、開発環境での使用に最適です。これらのテキスト・ファイルに記録されたメッセージは、任意のエディタ(Oracle Enterprise Manager 10g Application Server Controlコンソールなど)で読み取ることができます。
これらのファイルに記録されたメッセージは、Application Server Controlコンソールを使用して表示できるXML形式を使用します。ODLの主な利点は、ログ・ファイルの循環をサポートしていることです。
ログ・ファイルは、データの記録対象となるコンポーネントまたはアプリケーションに応じて異なる場所に生成されます。各コンポーネントまたはアプリケーションのロギング構成は、コンポーネント固有のXML構成ファイルに定義されます。
表11-1に、生成される各種ログ・ファイルの名前および場所とともに、各コンポーネントのロギング構成が含まれるXML構成ファイルを示します。特に明記されていないかぎり、示されるパスはすべて、スタンドアロンOC4Jの場合はORACLE_HOME
/j2ee/home
内、OPMN管理のOC4Jインスタンスの場合はORACLE_HOME
/j2ee/
instance
内です。
コンポーネント | 構成ファイル | デフォルトのログ・ファイル名および場所 |
---|---|---|
Javaロギングを使用するOC4Jコンポーネント |
このODL形式のログ・ファイルの構成方法は、「OC4Jロギングの構成」を参照してください。 |
スタンドアロンOC4J: /log/oc4j/log.xml OPMN管理OC4J: /log/instance_default_group_1/oc4j/log.xml |
Application Server Controlコンソール |
/application-deployments/ascontrol/ |
スタンドアロンOC4J: /log/ascontrol-application.log OPMN管理OC4J: /log/instance_default_group_1/ascontrol-application.log |
OC4Jにデプロイされたアプリケーション |
/application-deployments/app_name/ |
スタンドアロンOC4J: /application-deployments/app_name/application.log OPMN管理OC4J: /application-deployments/app_name/instance_default_group_1/application.log |
グローバル( |
/config/application.xml |
スタンドアロンOC4J: /log/global-application.log OPMN管理OC4J: /log/instance_default_group_1/global-application.log |
デフォルトWebサイトのアクセス・ロギング |
/config/default-web-site.xml |
スタンドアロンOC4J: /log/default-web-access.log OPMN管理OC4J: /log/instance_default_group_1/default-web-access.log |
OC4Jサーバー |
/config/server.xml |
スタンドアロンOC4J: /log/server.log OPMN管理OC4J: /log/instance_default_group_1/server.log |
JMS |
/config/jms.xml |
スタンドアロンOC4J: /log/jms.log OPMN管理OC4J: /log/instance_default_group_1/jms.log |
RMI |
/config/rmi.xml |
スタンドアロンOC4J: /log/rmi.log OPMN管理OC4J: /log/instance_default_group_1/rmi.log |
OPMN |
|
|
プレーン・テキスト・ロギングは、OC4Jで使用されるデフォルトの形式です。
この方式は、XMLファイルに合せてメッセージを振り分けます。しかし、同じサイズの複数のログ・ファイルに書き込むのではなく、そのコンポーネントに対するすべてのメッセージを単一のログ・ファイルに書き込みます。次の各項では、テキスト・ロギングの使用方法について説明します。
テキスト・ロギングは、表11-1に示したXML構成ファイル(default-web-site.xml
ファイルを除く)の要素により、有効または無効になります。(Webサイトのアクセス・ロギングの構成方法は、「Webサイトのアクセス・ロギングの構成」を参照してください。)
ロギングは、各コンポーネントのXML構成ファイルの<log>
要素の<file>
サブ要素によって有効になります。この要素には、単一のpath
属性が含まれ、生成されるログ・ファイルの名前と、必要に応じて場所を指定します。
<log> <file path="application.log" /> </log>
コンポーネントのテキスト・ロギングを無効にするには、対応する構成ファイルの<file>
要素を削除するか、コメント・アウトします。この行を削除しないでODLを有効にすると、両方のロギング・オプションが有効になります。
たとえば、アプリケーションのテキスト・ロギングを無効にするには、そのアプリケーションのorion-application.xml
ファイルで次の要素をコメント・アウトします。
<!-- <log> <file path="application.log" /> </log> -->
ODLとテキスト・ロギングの両方を同時に有効にできますが、ディスク領域を節約するには、これらのオプションのいずれかを無効にする必要があります。
テキスト・ロギングにはサイズ制限やログ循環機能がないため、ログ・ファイルの監視は重要です。チェックしないままにしておくと、ログ・ファイルのサイズは増大し続け、ディスク超過が発生する可能性があります。
これらのファイルを管理する唯一の方法は、OC4Jを停止し、ファイルを削除した後、OC4Jを再起動してログ・ファイルを新しく始めることです。
すべてのテキスト・ログ・ファイルは、表11-1「OC4Jで生成されるログ・ファイルのリスト」に示した場所にデフォルトで生成されます。テキスト・ログ・ファイルは、log
拡張子によって識別できます。
OC4Jコンポーネントに対して生成されるテキスト・ログ・ファイルは、次のようにApplication Server Controlコンソールを使用して表示できます。
home
です。
デプロイ済J2EEアプリケーションのテキスト・ログ・ファイルは、Application Server Controlコンソールを使用して表示することはできません。
Oracle Diagnostic Loggingフレームワーク(ODL)には、標準Javaフレームワークを補完して、ログ・データとOracleログ分析ツールを自動的に統合するプラグイン・コンポーネントが用意されています。
ODLフレームワークでは、ログ・ファイルはXML文書形式で作成され、他のOracle Application Serverやカスタム開発されたコンポーネント(Application Server Controlコンソールなど)によるログの分析および再利用を可能にします。ODLのもう1つの主な利点は、テキストベースのロギングとは異なり、ログ・ファイルの循環をサポートしていることです。
ODLは、<odl>
要素を表11-1に示したXMLファイルの<log>
要素内に追加すると有効になります。
注意
|
<odl>
要素には次の属性があります。すべて必須です。
path
: このコンポーネントのlog.xml
ファイルが生成されるディレクトリへのパス。max-file-size
: 個々のログ・ファイルに対して許容される最大サイズ(KB単位)。この制限に達すると、新しいログ・ファイルが生成されます。
max-directory-size
: ログ・ファイル・ディレクトリに対して許容される最大サイズ(KB単位)を設定します。この制限を超えると、最も古いログ・ファイルから消去されます。
たとえば、petstore
アプリケーションのorion-application.xml
ファイルの次のエントリは、このアプリケーションに対してlog.xml
ファイルを生成します。また、ログ・ファイルの最大値を1,000KB、ディレクトリの最大値を10,000KBに設定します。
<log> <odl path="../log/petstore/" max-file-size="1000" max-directory-size="10000" /> </log>
この構成を使用して、petstore
ログ・ファイルは、使用しているOC4Jインストールに応じて、次の場所に生成されます。
ログ・ファイルは、ORACLE_HOME
/j2ee/home/application-deployments/log/petstore
に生成されます。
ファイルは、ORACLE_HOME
/j2ee/
instance
/application-deployments/log/
instance
_default_group_1/petstore
というOC4Jインスタンス固有のディレクトリに生成されます。
ODLフレームワークでは、ログ・ファイルの循環などログ・ファイルの管理をサポートしています。ログ・ファイルの最大サイズおよびログ・ディレクトリの最大サイズも定義できます。また、OLDを使用すると次のような利点があります。
ODLログは、現行のログ・ファイルlog.xml
、および古いメッセージが含まれるゼロ以上のOLDアーカイブ(セグメント・ファイル)を含む一連のログ・ファイルです。ODLを有効にすると、新しいメッセージはそれぞれ、log.xml
の最後に追加されます。このログ・ファイルは循環ポイントに達すると名前が変更され、新しいlog.xml
ファイルが作成されます。
現行のログ・ファイルが循環ポイントに達するとセグメント・ファイルが作成されます。この循環ポイントは最大ODLセグメント・サイズとして、また、一部のOC4Jログでは循環時間および循環頻度として指定されています。log.xml
ファイルはlog
n
.xml
という名前に変更されます。ここでn
は1から始まる整数です。新しいlog.xml
ファイルは、コンポーネントにより新しい診断メッセージが生成されると作成されます。
最後のログ・ファイルがいっぱいになると、次の手順で処理されます。
ODLログやコンポーネントのサイズを制限するには、ログ・ディレクトリの最大サイズを指定する構成オプションを使用します。ディレクトリ内の全ファイルの合計サイズが最大サイズに達すると、合計サイズを指定された制限内に保つために最も古いアーカイブが削除されます。
たとえば、log9872
という名前のセグメント・ファイルで開始し、最大ディレクトリ・サイズに達したとき、ログ・ファイル・ディレクトリに次のファイルが存在するとします。
File Size log.xml 10002 log9872.xml 15000 log9873.xml 15000 log9874.xml 15000 log9875.xml 15000 log9876.xml 15000
この場合、log.xml
がいっぱいになるとlog9872.xml
が削除されて、log.xml
の内容が新しいファイルlog9877.xml
に移動されます。その後、新しい診断メッセージが新しいlog.xml
ファイルに書き込まれます。
たとえば、petstore
と言う名前のOC4Jアプリケーションに最大のODLセグメント・サイズおよび最大ディレクトリ・サイズを指定するには、ファイルORACLE_HOME
/j2ee/
instance_name
/application-deployments/petstore/orion-application.xml
に次のエントリを追加します。
<log> <odl path="../log/petstore/" max-file-size="1000" max-directory-size="10000" /> </log>
j2ee-logging.xml
ファイルに構成されているOC4Jコンポーネントの場合は、最大セグメント・サイズおよびディレクトリ・サイズに加えて、循環時間と循環頻度も指定できます。
時間ベースのログ循環では、<logging-configuration>
ルート要素の<log-handlers>
要素の<log_handler>
サブ要素に次に示すプロパティを指定できます。
hh:mm
。04:20など。この書式ではローカル・タイムゾーンを使用します。
yyyy-MM-dd
。2006-08-01など。この書式ではローカル・タイムゾーンを使用します。
yyyy-MM-ddThh:mm
。2006-08-01T04:20など。この書式ではローカル・タイムゾーンを使用します。
yyyy-MM-ddThh:mm:ss.sTZD
。TZDはタイムゾーン・インジケータです。TZDは、UTCを示すZ
または{+|-}hh:mm
です。たとえば、2006-03-01T04:20:00-08:00は米国太平洋標準時タイムゾーンの2006年3月1日4:20:00を表します。
baseRotationTimeを指定しない場合、デフォルト値はUTCの1970年1月1日00:00です。
これらのプロパティは次のファイルに指定します。
ORACLE_HOME/j2ee/instance_name/config/j2ee-logging.xml
たとえば、毎日ローカル時間の午前4時、またはサイズが2000000バイトに達した時にログ・ファイルを循環すると指定するには、次のようにします。
<log_handler name="h1" class="oracle.core.ojdl.logging.ODLHandlerFactory"> <property name="path" value="log"/> <property name="baseRotationTime" value="04:00"/> <property name="rotationFrequency" value="daily"/> <property name="maxFileSize" value=" 2000000"/> </log_handler>
ODL形式のログ・ファイルは、WebベースのApplication Server Controlコンソールで「ログ」リンクをクリックすると表示でき、管理者は、一元管理された場所からOC4J内で稼働しているすべてのコンポーネントおよびアプリケーションによって生成されたロギング出力を集計および表示できます。
ODLログ・ファイルは、「ログ・ファイル」ページでは.xml
拡張子で識別されます。
home
です。
OC4Jの各種コンポーネントでは、OC4Jログ・ファイルに書き込むJavaログ出力を利用します。OC4Jログ・ファイルは、Oracle Diagnostic Loggingフレームワークを使用してXML形式で生成され、Application Server Controlコンソールを使用して表示できます。
この項の内容は次のとおりです。
OC4Jには、OC4Jログ・ファイル(log.xml
)に書き込む多くのコンポーネント・ログ出力が用意されています。使用可能なコンポーネント・ログ出力は、Application Server Controlコンソールの「ログ出力の構成」ページを使用して表示および構成できます。
Javaのログ・レベルは、個々のコンポーネント・ログ出力ごとに設定できます。NULL
に設定すると、ログ出力は、親に設定されたログ・レベルを継承します。
したがって、すべてのログ出力のデフォルト・レベルは、oracle
ログ出力から継承されるデフォルト値であるINFO
です。この値は、Javaログ・レベルNOTIFICATION
にマップされます。このデフォルト値の変更方法は、「oracleログ出力の構成」を参照してください。
「ログ出力の構成」ページからログ出力に設定されたログ・レベルは保存されず、OC4Jランタイムにのみ適用されます。OC4Jが再起動されると、ログ・レベルは親ログ出力から継承されるデフォルト設定に戻ります。
次の表11-2に、Application Server Controlコンソールから設定できるログ・レベルと、それぞれのマップ先となるODLメッセージ・タイプ:ログ・レベルを示します。
OC4Jコンポーネント・ログ出力をApplication Server Controlコンソールから構成するには、次のようにします。
OC4Jログ・ファイルは、Application Server Controlコンソールを使用して表示できます。ファイルを表示するには、次のようにします。
home
です。
すべてのODLログ・ファイルと同様に、新しいメッセージはそれぞれ、log.xml
という最新のログ・ファイルに格納されます。最大サイズに達すると、ログはlog
n
.xml
というアーカイブ・ログ・ファイルにコピーされます。n
は、1から始まる整数です。
oracle
ログ出力の構成は、j2ee-logging.xml
に定義されます。このファイルは、ORACLE_HOME
/j2ee/
instance
/config
ディレクトリにインストールされています。
OC4J 10g(10.1.3.1.0)では、次のように、Application Server Controlコンソールを使用してログ出力のログ・レベルを設定できます。
「管理」
をクリックします。
「ログ出力の構成」
を選択して「ログ出力の構成」ページを表示します。
「すべてを開く」
をクリックして、現在OC4Jインスタンスにロードされているログ出力の全リストを表示します。
また、j2ee-logging.xml
構成ファイルは手動で編集することもできます。このファイルの変更後には、OC4Jを再起動してください。
構成ファイルには、<logging-configuration>
ルート要素内に次の2つの要素があります。
<log_handlers>
この要素には、異なる3つのログ・ハンドラを定義する<log_handler>
要素が含まれます。
oc4j-handler
oracle
ログ出力用のログ・ハンドラです。
oracle-webservices-management-auditing-handler
oracle.webservices.management.auditingログ出力用のログ・ハンドラです。
oracle-webservices-management-logging-handler
oracle.webservices.management.loggingログ出力用のログ・ハンドラです。
次のプロパティは、各ログ・ハンドラの<property>
サブ要素に指定します。
<loggers>
この要素には、次の情報を定義する<logger>
要素が含まれます。
name
: ログ出力名。この値は変更しないでください。
level
: このログ出力が機能する最低ログ・レベル。このレベルは、デフォルトでODLの値NOTIFICATION:1
に設定されます。この値はApplication Server Controlコンソールの「ログ出力の構成」ページに表示されるJavaログ・レベルINFO
にマップされます。 この値は、Javaロギング・レベル(FINE
)またはODLメッセージ・タイプ:ログ・レベル(TRACE:1
)のいずれかに設定できます。
useParentHandlers
: ログ出力で親ハンドラを使用する必要があるかどうかを示します。この値はデフォルトでfalse
に設定されるため、oracle
ログ出力は親(root
ログ出力)に設定されたログ・レベルを継承しません。
<handler>
: 使用するハンドラの名前。この値は変更しないでください。
次の例では、ODLメッセージ・タイプ:ログ・レベルとしてTRACE:32
を指定し、デフォルトのログ・レベルをFINEST
に設定しています。
<logging_configuration> <log_handlers> <log_handler name='oc4j-handler' class='oracle.core.ojdl.logging.ODLHandlerFactory'> <property name='path' value='%ORACLE_HOME%/j2ee/%OPMN_PROC_TYPE%/log/ %OPMN_PROC_TYPE%_%OPMN_PROC_SET%_%OPMN_PROC_INDEX%/oc4j'/> <property name='maxFileSize' value='10485760'/> <property name='maxLogSize' value='104857600'/> </log_handler> </log_handlers> <loggers> <logger name='oracle' level='TRACE:32' useParentHandlers='false'> <handler name='oc4j-handler'/> </logger> </loggers> </logging_configuration>
|
![]() Copyright © 2006 Oracle Corporation. All Rights Reserved. |
|