ロギングの構成

ロギングは、CM サーバーと CM API ベースのアプリケーションのモニターおよびデバッグに使用できます。

ロギングは、通常の CM サーバーと CM API ユーザーの操作、および、CM サーバーまたは CM API ベースのアプリケーションの実行中に発生したエラーを追跡します。ログの入力は、コンピュータのデフォルト ロケールで、あるいは、コンピュータのロケールがサポートされない場合は米国英語で行われます。

デフォルトで、CM サーバーのロギングは INFO レベルに設定されています。ご使用の CM API ベースのアプリケーションでロギングを使用可能にするには、INFO レベルに設定する必要があります。

CM API、WebSphere® Application Server、および TSlogger のロギング パッケージを構成できます。

CM API ロギング。

CM API ロギングは、アプリケーションの実行に使用されている JRE の JDK ディレクトリ構造内にある logging.properties ファイルを使用して制御されます。JDK の jre¥lib ディレクトリ (たとえば、C:¥Program Files¥IBM¥WebSphere¥AST¥eclipse¥jre¥libC:¥jdk_5.0¥jre¥libC:¥Program Files¥Java¥jre1.5.0_06¥lib など) で、logging.properties ファイルを探してください。

ロギングは、デフォルトで使用不可になっています。INFO レベルで使用可能に設定してください。

以下の logging.properties ファイルの例には、CM API ベースのアプリケーションのログと追跡をどのように構成するかを示す項目が含まれています。
############################################################
#      Global properties
############################################################
#
# "handlers" specifies a comma separated list of log Handler 
# classes.  These handlers will be installed during VM startup.
# Note that these classes must be on the system classpath.
# By default we only configure a ConsoleHandler, which will only
# show messages at the INFO and above levels.
handlers = java.util.logging.ConsoleHandler

# To also add the FileHandler, use the following line instead.
#handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler

# Default global logging level.
# This specifies which kinds of events are logged across
# all loggers.  For any given facility this global level
# can be overriden by a facility specific level
# Note that the ConsoleHandler also has a separate level
# setting to limit messages printed to the console.
# The next line enables logging (for all logger objects) to occur at the INFO level
.level=INFO

############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################

# CMLogger - Should always be enabled at the INFO level. 
#
# Applications using CM API do not have to be stopped and restarted; changes to the configured

# logging.properties file are automatically noticed and honored within 10 seconds.
#
# The following lines designate logging for the CMLogger object to occur at the INFO level,
# and that the log output file will be named CMLogger[#].log, located in the logged-in
# user's HOME directory; the log output file will rotate through 40 files, each file being
# limited to 40000000 bytes.  Log entries will be appended to the current log output
# file in the rotation and will be written using a simple format.
#
com.ibm.rational.stp.common.internal.util.CMLogger.level = INFO
com.ibm.rational.stp.common.internal.util.LogHandler.pattern = %h/CMLogger%g.log
com.ibm.rational.stp.common.internal.util.LogHandler.limit = 40000000
com.ibm.rational.stp.common.internal.util.LogHandler.count = 40
com.ibm.rational.stp.common.internal.util.LogHandler.append = true
com.ibm.rational.stp.common.internal.util.LogHandler.formatter = java.util.logging.SimpleFormatter

# CMTracer - Enable (uncomment) the entries below for temporary use only, as tracing
# can be resource intensive.  
#
# Applications using CM API do not have to be stopped and restarted; changes to the configured
# logging.properties file are automatically noticed and honored within 10 seconds.
#
# The following lines designate tracing for the CMTracer object to occur at the FINER level,
# and that the trace output file will be named CMTracer[#].log, located in the logged-in
# user's HOME directory; the trace output file will rotate through 40 files, each file being
# limited to 40000000 bytes.  Trace entries will be appended to the current trace output
# file in the rotation and will be written using a simple format.
#
#com.ibm.rational.stp.common.internal.util.CMTracer.level = FINER
#com.ibm.rational.stp.common.internal.util.TraceHandler.pattern = %h/CMTracer%g.log
#com.ibm.rational.stp.common.internal.util.TraceHandler.limit = 40000000
#com.ibm.rational.stp.common.internal.util.TraceHandler.count = 40
#com.ibm.rational.stp.common.internal.util.TraceHandler.append = true
#com.ibm.rational.stp.common.internal.util.TraceHandler.formatter = java.util.logging.SimpleFormatter

これらの設定によって、CMLogger[#].log という名前のログ ファイル (および、CMTracer 項目がアンコメントされている場合は、CMTracer[#].log という名前のトレース出力ファイル) が生成されます。それぞれのファイルはログイン ユーザーの HOME ディレクトリ ([#] にはファイルのローテーション番号が指定されます) にあります。それぞれのファイルがいっぱいになると別のファイルに出力されます。

上記の logging.properties 項目の使用では、ログ レコードは該当するファイルの最後に付加され、それぞれの項目が単純なフォーマットで保管されるように指定されています。logging.properties ファイルが変更されると、約 10 秒以内に自動的に通知され、CM API ベースのアプリケーションによって認識されます。アプリケーションを停止したり再始動したりする必要はありません。

ログ出力ファイルがいっぱい (40 MB) になると、新規ファイルが作成され、前のファイルはファイルのローテーションが行われた日付とタイム スタンプを含む名前に変更されます。 各ファイルは 40 MB のデータを保持し、既存の項目に新規項目が追加されます。これは、アプリケーションの再始動の間も行われます。ログ ファイルの数が 40 個に達すると、新規ファイルへのローテーションにより一番古いファイルが自動的に削除されます。

Java ロギングの構成方法について詳しくは、JDK java.util.logging.Logger と java.util.logging.FileHandler Javadoc を参照してください。

カスタム ロギング プロパティ ファイルを作成する場合、-D 引数を指定することによって、それがどこにあるかを JVM に指定する必要があります。例えば、次のようになります。
java -Djava.util.logging.config.file=C:¥myLogPropsFile.properties your_client_java_program_that_uses_CM-API

WebSphere Application Server のロギングと追跡の構成

WebSphere Application Server ロギングと追跡のセットアップおよび構成には、WebSphere Application Server 管理コンソールを使用します。この WebSphere Application Server 管理コンソールには、次の URL を使ってアクセスできます。
http://<server-name>:<admin-console-port-number>/ibm/console
ここで <server-name> は CM サーバー システムの名前で、<admin-console-port> は管理コンソールのポート番号 (CM サーバーではデフォルトで 12060、その他の WebSphere Application Server のバージョンでは 9060) です。
注: WebSphere Application Server (CM サーバー コンポーネントを含む) で稼働しているコンポーネントに対していずれかのレベル (FINE、FINER、または FINEST) でトレースを行うと、パフォーマンスに悪影響を与えます。

CM サーバー システムで使用している Websphere Application Server のタイプによっては、リアルタイムに変更を加えることができ、CM サーバーを停止および再始動する必要がありません。ほとんどの管理コンソールのロギングのセットアップ ページには、[構成] タブと [ランタイム] タブの、2 つのタブがあります。

管理コンソールから [トラブルシューティング]->[ロギングおよび追跡] をクリックし、サーバーのリストから構成するサーバーを選択します。[ログの詳細レベルの変更] を選択し、[ランタイム] タブをクリックします。[ランタイム] タブに加えられた変更は、その変更を保存するとすぐに有効になります。[構成] タブに加えられた変更は、サーバーを再始動するまで有効になりません。変更を永続させたいなら、[ランタイムの変更を構成にも保存する] チェック ボックスを選択します。 [コンポーネント (Components)] リンクを選択します。 ボックス中に *=info がリストされていることに留意してください。 com.ibm.rational.* オプションを開いて、com.ibm.rational.stp.* を選択します。 [メッセージおよび追跡レベル] オプションをクリックして、レベルを選択します。[OK] をクリックして、開かれるページの上部にある [メッセージ] 領域にある [保存] リンクをクリックします。サーバーを再始動しなくても、変更は有効になります。

CM サーバー システム上の Websphere Application Server のバージョンまたはクラスに、リアルタイムの構成変更を使用可能にする [ランタイム] タブがない場合は [構成] タブを使用し、次にサーバーを再始動して保管された変更点を有効にします。

ローテーションを行うログ ファイルのサイズとログ ファイルの数については、すぐに使用可能なデフォルトの設定値をおそらく増やす必要があります。ローテーションを行うログ ファイルの数は少なくとも 40 に、ログ ファイルのサイズは少なくとも 40 MB に設定します。Websphere Application Server 管理コンソールで、JVM ログ ファイル サイズとファイル ローテーションの設定を変更するには、次の手順で行います。
  1. [トラブルシューティング] -> [ロギングおよび追跡] と選択します。
  2. 構成するサーバーのリストから、該当するサーバーを選択します。
  3. [JVM ログ] を選択し、次いで [構成] タブをクリックします (現在の SystemOut.log および SystemErr.log ファイルの内容を表示するには、[ランタイム] タブを使用することができます)。
  4. SystemOut と SystemErr のロケーション、ファイル サイズ (少なくとも 40 MB が必要)、保持する履歴ファイルの数 (少なくとも 40 MB が必要) を変更します。
  5. [OK] をクリックして、開かれるページの上部にある [メッセージ] 領域にある [保存] リンクをクリックします。
WebSphere Application Server ログ ファイルは以下の場所にあります。
  • UNIX® : /opt/IBM/RationalSDLC/common/CM/profiles/cmprofile/logs/server1/
  • Linux®: /opt/ibm/RationalSDLC/common/CM/profiles/cmprofile/logs/server1/
  • Windows®: ¥Program Files¥IBM¥RationalSDLC¥common¥CM¥profiles¥cmprofile¥logs¥server1¥

TSlogger

TSLogger は、バックエンド ONCRPC サーバー プロセスのロギング用です。このユーティリティを構成するには、以下のロケーションにある tslogger.properties ファイルを編集します。
  • Windows: ¥Program Files¥IBM¥RationalSDLC¥common¥CM¥bin¥tslogger.properties
  • UNIX: /opt/IBM/RationalSDLC/common/CM/bin/tslogger.properties
  • Linux: /opt/ibm/RationalSDLC/common/CM/bin/tslogger.properties
ログ ファイルおよびトレース ファイルは、以下の場所にあります。
  • Windows: ¥Program Files¥IBM¥RationalSDLC¥common¥CM¥logs¥server1¥ccrpc [and ¥cqrpc]
  • UNIX: /opt/IBM/RationalSDLC/common/CM/logs/server1/ccrpc [and /cqrpc]
  • Linux: /opt/ibm/RationalSDLC/common/CM/logs/server1/ccrpc [and /cqrpc]
ログおよびトレース ファイルには、以下が含まれます。
  • SystemOut.log - 一般的なログ出力で、デフォルトでは INFO レベルでログ可能になるもの。
  • SystemErr.log - エラー/例外出力で、デフォルトで有効。
  • trace.log - 追跡出力で、デフォルトでは無効。

tslogger.properties ファイルには、実行可能な変更および設定可能な許容値の範囲などのラベルが付けられた領域があります。デフォルトでは、INFO レベルのロギングが有効になっています。 INFO、WARNING、および SEVERE メッセージは、すべてログ ファイル中に記録されます。ログ ファイルを構成するには、tslogger.properties ファイルを編集しますが、このファイルはインストール時に適切に構成されており、変更する必要はありません。

tslogger.properties ファイルのデフォルト設定は、変更を必要としない値に設定されています。出力ファイルがいっぱいになると、ファイルのローテーションが行われ、次のファイルに出力されます。 ローテーション可能な最大ファイル数に達すると、最も古いファイルが削除され、ローテーションを行う次のファイルの場所が確保されます。

ロギング レベルを高いほうから順に要約すると、以下のようになります。
  • OFF: すべてのロギングとトレースを無効にします。
  • ERROR: JSR47 の SEVERE に相当します。
  • WARNING: JSR47 の WARNING に相当します。
  • INFO: JSR47 の INFO に相当します。
  • DEBUG_MIN: JSR47 の FINE に相当します。
  • DEBUG_MID: JSR47 の FINER に相当します。
  • DEBUG_MAX: JSR47 の FINEST に相当します。
  • ALL: すべてのレベルのロギングとトレースを有効にします。
関連概念
ClearQuest のログ ファイルとログ プロパティ ファイル

フィードバック