このセクションでは、JRun ログ メカニズムの設定に使用する次のプロパティのカテゴリについて説明します。
このセクションでは、JRun ログ メカニズムを設定して有効にする場合に使用する、一般プロパティについて説明します。
ログ サービスのクラスは、allaire.jrun.logging.LoggingService
です。
ログ メッセージの形式です。既定のメッセージ形式は次のとおりです。
{date MM/dd HH:mm:ss} {log.level} ({log.name}) {log.message}
この形式では、メッセージに日付、時刻、イベント タイプ、イベント生成者、 およびメッセージ テキストが表示されるように設定されています。メッセージ 形式を定義する場合、次のコンポーネントが使用できます。
{date}
yyyyMMdd
の形式で表された現在の日付
{date <format>}
現在の日付の形式。適切な値については、{jrun.rootdir}/docs/api
ディレクトリにある Java マニュアルのjava.text.SimpleDateFormat
クラスに関する記述を参照してください。 {day}
日付で、01 ~ 31 の 2 桁の数字 {month}
月で、01 ~ 12 の 2 桁の数字 {year}
年で、4 桁の数字{hour}
時刻で、00 ~ 23 の 2 桁の数字 {julian}
現在の日付をユリウス暦で表したもの{thread.name}
現在のスレッド名 {thread.hashcode}
現在のスレッド ハッシュコード {thread.id}
現在のスレッド ID。この ID は 8 文字の 16 進数形式で表されたハッシュコードです。 {log.level}
ログ イベント タイプ (debug、error、info、warning){log.name}
ログ メッセージを生成する JRun サービスの名前。既定では、この名前はかっこで囲まれます。{log.message}
ログ イベント メッセージカンマ区切りリストとして指定した、ログするイベントのタイプ。使用可能な
イベント タイプは、debug
、error
、info
、および warning
です。既定のログ
レベルは、次のように設定されています。
info、warning、error
ログ イベントの一覧が空白の場合は、すべてのログ イベントが記録されます。 さらに、ログ メカニズムは Web サーバーと JRun の間の接続についてのメトリック イベントを受信できます (第 37 章を参照)。
ログ イベント リスナのカンマ区切りリストです。このプロパティを使用して、 ログ メカニズムを有効にします。このリストが空白の場合、ログ イベントは記録 されません。このリストは、実際のイベント ログを記録しているリスナの論理名に 相当します。
JRun のインストール時に行われるログ メカニズムの既定の設定では、このプロパ
ティには既定のスレッド ロガーの論理名 threadedlogger
が設定されています。
この設定では、スレッド ロガーにより、すべてのログ イベントが記録され、その後、
既定のディスパッチ ロガーに転送されます。ログ メカニズムの既定の設定の説明
については、"既定のログ設定"を参照してください。
ここで指定された各リスナについて、リスナを定義するためのプロパティを、プロ パティ ファイルに指定する必要があります。
これらのプロパティによって、logging.listeners
プロパティで指定されたthreadedlogger
を定義します。logging.listeners
プロパティにほかのロガーを含める場合は、これらのプロパティの threadedlogger
をロガーの名前に置き換え、このセクションのプロパティを使用して、ロガーのクラスとリスナを定義する必要があります。
logging.<loggerName>.propertyName = propertyValue
ここで loggerName は、前のセクションで説明した logging.listeners
プロパティで定義したロガーの論理名です。
既定の設定では、JRun により、次のプロパティが設定された threadedlogger
スレッド ロガーが作成されます。
logging.threadedlogger.class=allaire.jrun.logging.ThreadedLogger
logging..threadedlogger.listeners=filelogwriter
既定では、スレッド ロガーによって 1 つのリスナが定義されます。このリスナによってすべてのイベントがロガーから 1 つのファイル ログ ライターに送信されます。
スレッド ロガー クラスの名前。allaire.jrun.logging.ThreadedLogger
のプロ
パティ値を使用する必要があります。
スレッド ロガーのキューからイベントを受け取るリスナを指定します。1 つ以上の リスナと、ディスパッチ ロガーか、またはライターを 1 つ定義する必要があります。
既定では、スレッド ロガーに指定されたリスナのみが filelogwriter
で、これは
既定のファイル ライターの論理名です。次に、既定のファイル ライターは 1 つの
ファイル ライターにすべてのイベントを送ります。ログ メカニズムの既定の設定
の説明については、"既定のログ設定"を参照してください。
ディスパッチ ロガーはログ イベントを受け取り、1 つ以上のログ リスナにこのイベントを転送します。ディスパッチ ロガーを使用すると、イベントのタイプに応じて、イベントを受け取るリスナを選択できるようになります。したがって、4 種類のイベント タイプに対応させて、4 種類のリスナにイベントを転送できます。
logging.<dispatchLoggerName>.propertyName = propertyValue
ここで、dispatchLoggerName には、使用しているディスパッチ ロガーの論理名が入ります。
既定の設定では、JRun により、次のプロパティを使用して、ディスパッチ ロガーが 1 つ定義されます。
logging.dispatchlogger.class=allaire.jrun.logging.DispatchLogger
logging.dispatchlogger.events={logging.infoevent},{logging.debugevent}, {logging.warningevent},{logging.errorevent} logging.dispatchlogger.destinations=filelogwriter,filelogwriter,filelog writer,filelogwriter
スレッド ロガー クラスの名前。allaire.jrun.logging.DispatchLogger
の値を
使用する必要があります。
カンマ区切りリストとしてディスパッチ ロガーにより送信されるイベント。既定 値は次のとおりです。
{logging.infoevent},{logging.debugevent},{logging.warningevent}, {logging.errorevent}
ディスパッチ ロガーで転送する必要のあるイベントだけを指定します。
ディスパッチ ロガーからのイベントの出力先となるリスナのカンマ区切りリスト。 リスナは logging.dispatchlogger.events プロパティで指定されたイベントの 順に指定してください。
既定値は次のとおりです。
filelogwriter,filelogwriter,filelogwriter,filelogwriter
この設定では、イベントはすべて既定のファイル ライターに書き込まれます。
このセクションでは、ファイル ライターの設定方法について説明します。ファイル ライターはイベントを受けとって、ファイルに書き込みます。
logging.<fileLoggerName>.propertyName = propertyValue
ここで、fileLoggerName には、使用しているファイル ライターの論理名が入ります。
JRun のインストール時に行われたログ メカニズムの既定の設定では、次のプロパティを使用して、ファイル ライターが 1 つ定義されています。
logging.filelogwriter.class = allaire.jrun.logging.FileLogWriter
logging.filelogwriter.filename = {jrun.rootdir}/logs/
{jrun.server.name}-event.log
logging.filelogwriter.rotationsize = 100000
logging.filelogwriter.rotationfiles = 5
これらのプロパティにより、filelogwriter
ファイル ライターが作成されます。既定の設定では、すべてのイベントは、JRun のインストール ディレクトリの logs
ディレクトリにある {jrun.server.name}-event.log
ファイルに書き込まれます。
ファイル ライター クラスの名前。allaire.jrun.logging.FileLogWriter
が指定
されます。
このファイル ロガーによってすべてのイベントが書き込まれるファイル名。
既定では、このファイル名は {jrun.server.name}-event.log
で、JRun インス
トール ディレクトリの logs
ディレクトリにあります。ここで、
{jrun.server.name}
には、default
などの JRun サーバー名が入ります。
ファイルがローテートされるまでの、ログ ファイルのサイズの最大値 (単位はバイ ト)。ファイルがローテートされると、ログ メカニズムによる現在のログ ファイ ルへの書き込みは停止され、新しいログ ファイルが作成されます。すべての新しい イベントは、新しいログ ファイルに書き込まれます。このプロパティを使用して、 ログ ファイルの最大サイズを制御できます。
保持するログ ファイルの数を指定するには、ログ メカニズムの rotationfiles
プロパティを使用します。たとえば、rotationfiles
を 2
に設定すると、ログ メカ
ニズムによって 2 つのローテート ファイルを持つログ ファイルがログ ライター
用に確保されます。すでに 2 つのログ ファイルがあるときに、あるイベントによ
り、ログ ファイルがローテート サイズを超えてしまった場合、古い方のログ ファ
イルが削除され、新しいファイルが作成されます。
rotationsize
の既定値は 100000
です。サイズはバイト、キロバイト (10 k) また
はメガバイト (10 m) 単位で指定します。
たとえば、ログ イベントを event.log
ファイルに書き込むようにファイル ライ
ターを設定し、rotationfiles=3
および rotationsize=100000
に設定します。
次のログ イベントによってログ ファイルのサイズが 100000 バイトを超えると、
ログ ファイルがローテートされ、次の順序のようになります。
event_3.log
ファイルがある場合は、このファイルが削除されます。
event_2.log
ファイルがある場合は、このファイルの名前が event_3.log
に変更されます。 event_1.log
ファイルがある場合は、このファイルの名前が event_2.log
に変更されます。 event.log
の名前が event_1.log
に変更されます。 event.log
が作成されます。 ローテート ファイルの数。上記の"logging.<fileLoggerName>.rotationsize"
に関する注意事項を参照してください。
既定値は 5 です。
ログ メッセージの形式を指定します。この設定は、logging.format
プロパティを
使用して指定したログ形式を書き換えます。このプロパティの値の一覧については、
"一般プロパティ"にある"logging.format" の説明を参照してください。
JRun により最初にログ ファイルに書き込みが行われるときに、このファイルの 先頭に挿入されるログ ファイル ヘッダ。ヘッダには、タイムスタンプなどの動的な プロパティを含むどのようなテキストでも使用できます。次の例では、ログ ファ イルに作成日時が書き込まれます。
logging.filelogwriter.heading==# 作成日 {date MM/dd hh:mm:ss}
また、プロパティ logging.fileLoggerName.heading.lineN
を使用して、ヘッダを
挿入することもできます。logging.fileLoggerName.heading
プロパティ、または
logging.fileLoggerName.heading.lineN
プロパティのどちらかを使用できます。
両方は使用できません。
JRun により最初にログ ファイルに書き込みが行われるときに、このファイルの
先頭に挿入される複数行のログ ファイル ヘッダの 1 行。プロパティ コンポーネント
lineN
には、ヘッダの行番号を指定します。
ヘッダには、タイムスタンプなどの動的なプロパティを含むどのようなテキスト でも使用できます。次の例では、ログ ファイルに作成日時が書き込まれます。
logging.filelogwriter.heading.line1=#------------------------------- logging.filelogwriter.heading.line2=# 作成日{date MM/dd hh:mm:ss} logging.filelogwriter.heading.line3=# これが JRun ログ ファイルです。 logging.filelogwriter.heading.line4=#-------------------------------
行番号は 1 から始まる必要があります。連続する次の行が見つからないと、ログ ライターによるヘッダ行の検索は終了します。
ログ メッセージを電子メール メッセージに転送するには、電子メール ライターを作成します。このセクションでは、電子メール ライターに設定するプロパティについて説明します。例については、"ファイルと電子メールへのログ メッセージの書き込み"を参照してください。
logging.<mailLoggerName>.propertyName = propertyValue
ここで、mailLoggerName には、使用する電子メール ライターの論理名を指定します。
メール ライター クラス名。allaire.jrun.logging.SmtpLogWriter
が指定され
ます。
メモ 電子メール サーバーでは、 |
生成された電子メール アドレスの「from」の部分。この値に空白を入れることは できません。
生成された電子メール アドレスの「to」の部分。この値に空白を入れることはでき ません。
電子メール ホスト。この値に空白を入れることはできません。
電子メール メッセージを生成するログ イベントのカンマ区切りリスト。指定できる
値は info
、warning
、error
、および debug
です。
ログ メッセージの形式を指定します。この設定は、logging.format
プロパティを
使用して指定したログ形式を書き換えます。このプロパティの値の一覧については、
"一般プロパティ"にある logging.format
プロパティの説明を参照してください。
このセクションでは、スクリーン ライターの設定方法について説明します。スクリーン ライターはイベントを受け取り、これを標準出力に書き込みます。標準出力は通常、使用しているコンピュータのスクリーンになります。
logging.<screenLoggerName>.propertyName = propertyValue
ここで、screenLoggerName には、使用するスクリーン ライターの論理名を指定します。
スクリーン ライター クラス名を指定します。
allaire.jrun.logging.ScreenLogWriter
の値を使用する必要があります。
ログ メッセージの形式を指定します。この設定は、logging.format
プロパティを
使用して指定したログ形式を書き換えます。このプロパティの値の一覧については、
"一般プロパティ"にある"logging.format"
既定では、Web アプリケーションによって標準出力と標準エラーに書かれた情報を、JRun サーバーが取得し、ログ ファイルに書き込みます。次のプロパティを使用して、これらのログ ファイルの名前と場所を設定し、ログ ファイルにスタック トレースを含めるように JRun を設定できます。
標準出力に書き込まれた情報を含むファイルの、名前と場所を設定します。既定 では、JRun はこれらの情報を次のファイルに書き込みます。
{jrun.rootdir}/logs/{jrun.server.name}-out.log
ここで、{jrun.server.name} には、JRun サーバーの名前が入ります。
標準エラーに書き込まれた情報のためのファイルの名前と場所を設定します。 既定では、JRun はこれらの情報を次のファイルに書き込みます。
{jrun.rootdir}/logs/{jrun.server.name}-err.log
ここで、{jrun.server.name} には、JRun サーバーの名前が入ります。