- PR -

Log4J(1.1.3と1.2.15)の挙動

1
投稿者投稿内容
ballondor
会議室デビュー日: 2006/11/02
投稿数: 7
お住まい・勤務地: 福岡
投稿日時: 2008-07-26 00:44
だいぶ古くて申し訳ないのですが、
Log4Jでの挙動について★の箇所で謎があります。

JDK1.4
WindowsXP
Eclipse3.2
Tomcat5.0(起動停止はEclipseより)

@log4j-1.2.15.jar を使用した場合
(PC日付:25日)
 1.tomcat起動
 2.ログ出力
  →25日のログとして test.log に書き込まれる。
 3.tomcat停止
 4.PC日付を26日に変更
 5.tomcat起動
 6.ログ出力
  →25日分のログは test.log.2008-07-25 にリネーム。
  →26日のログとして test.log に書き込まれる。

 このときのlog4j.xml
 -----------------------------------------------------
 <appender name="testAppender"
 class="org.apache.log4j.DailyRollingFileAppender">
   <param name="file" value="C:\\\\\\\\test.log" />
   <param name="threshold" value="TRACE"/>
   <param name="append" value="true" />
   <layout class="org.apache.log4j.PatternLayout">
     <param name="ConversionPattern"
     value="%d{yyyy/MM/dd HH:mm:ss} %-5p %m%n" />
   </layout>
 </appender>

 <logger name="test">
   <appender-ref ref="testAppender" />
 </logger>
 -----------------------------------------------------


@log4j-1.1.3.jar を使用した場合
(PC日付:25日)
 1.tomcat起動
 2.ログ出力
  →25日のログとして test.log に書き込まれる。
 3.tomcat停止
 4.PC日付を26日に変更
 5.tomcat起動
 6.ログ出力
  →2で書き込んだ次の行から26日のログが test.log に書き込まれる。
   @-6 のようにリネームされ新規ファイルに26日分が出力されない。(★何故?)

 このときのlog4j.xml
 -----------------------------------------------------
 <appender name="traceAppender"
 class="org.apache.log4j.DailyRollingFileAppender">
   <param name="file" value="C:\\\\\\\\test.log" />
   <param name="threshold" value="TRACE"/>
   <param name="append" value="true" />
   <param name="DatePattern" value="'.'yyyy-MM-dd" />
   <layout class="org.apache.log4j.PatternLayout">
     <param name="ConversionPattern"
     value="%d{yyyy/MM/dd HH:mm:ss} %-5p %m%n" />
   </layout>
 </appender>

 <category name="traceLog">
   <appender-ref ref="traceAppender" />
 </category>
 -----------------------------------------------------

単純に 1.1.3 ではそこまで考慮されてないってオチですかね?
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2008-07-26 04:00
せっかくのオープンソースの製品ですから、バグデータベースを調てみるのはいかがでしょうか?
たとえば、以下のようなクエリを投げると DailyRollingFileAppender 関連のすべてのバグを一覧することができます。
https://issues.apache.org/bugzilla/buglist.cgi?quicksearch=ALL+DailyRollingFileAppender

かなりピンポイントで現象の再現方法が洗い出せているようですのでソースコードそのものを見てみるのも面白いかもしれません。
http://svn.apache.org/viewvc/logging/log4j/tags/

[ メッセージ編集済み 編集者: インギ 編集日時 2008-07-26 04:05 ]
1

スキルアップ/キャリアアップ(JOB@IT)