Apacheで、ログを出すために、log4jというライブラリがあります。
で、それをJavaで使う方法については、こちらにまとめておきました。
今回の話は、それを使って、ログを出そうとしたときの話。
(今回、log4j.jarをTomcatのcommon.libにおいています)
コンソールには、ログが出るんです。
でも、ファイルは、
「どこ?」
「どこ??」
「どこーー???」
って感じで、どこにも、書き出してない。
Tomcatのlogsにもない。
logsに書かれている、ほかのファイルをみても、この内容はない。
うーん、なにか、書き方が悪いのかと思い、ちょっと、log4j.propertiesをいじって、Tomcat再起動しようとしたら。。。うん??
メニューのApache Tomcat 4.0の下、(Start Tomcatなんかと同じところ)にログがある。
なーぜー??
わかりました。
ウィリアムのいたずらです。
(私とその仲間?は、Windows独特の、おかしな現象(いたずら)をこうよんでいます。
ちなみに、ウィリアムの略称は、ビルです。つまり、ビルゲイツのいたずらといいたい)
Startメニューを右クリックしてみましょう。
プロパティダイアログが出てきます。
そこに、作業ファイルっていうのがあります。
Start Tomcatの作業ファイルは、
自分のフォルダ\スタート メニュー\プログラム\Apache Tomcat 4.0
になっています。つまり、スタートメニューの中。
ログが起動すると、そこの下に、ログファイルを作ろうとするから。
作業フォルダを違う場所に変えれば、そこの下にできる
で、さらにおどろいたことに、Tomcatは、javaの上で動いているようだ。
プロパティダイアログのリンク先を見て知った。
さらに驚いたことに、私の場合、1.3のjavaが起動するようになっていた。
道理で、MySQLで、クラスパスに1.4.2のjarのありかを追加しても、Connector/J 3.1(javaなどのプログラムからMySQLのDBアクセスのとき必要)だと、java.lang.NoClassDefFoundError: java/sql/Savepointが出るわけだ。
1.3で動いているんだもん!
(Connector/J 3.1は、1.4.0以上でないと動かない)
うーん、ウィリアムのいたずらだあ!
で、それをJavaで使う方法については、こちらにまとめておきました。
今回の話は、それを使って、ログを出そうとしたときの話。
(今回、log4j.jarをTomcatのcommon.libにおいています)
コンソールには、ログが出るんです。
でも、ファイルは、
「どこ?」
「どこ??」
「どこーー???」
って感じで、どこにも、書き出してない。
Tomcatのlogsにもない。
logsに書かれている、ほかのファイルをみても、この内容はない。
うーん、なにか、書き方が悪いのかと思い、ちょっと、log4j.propertiesをいじって、Tomcat再起動しようとしたら。。。うん??
メニューのApache Tomcat 4.0の下、(Start Tomcatなんかと同じところ)にログがある。
なーぜー??
わかりました。
ウィリアムのいたずらです。
(私とその仲間?は、Windows独特の、おかしな現象(いたずら)をこうよんでいます。
ちなみに、ウィリアムの略称は、ビルです。つまり、ビルゲイツのいたずらといいたい)
Startメニューを右クリックしてみましょう。
プロパティダイアログが出てきます。
そこに、作業ファイルっていうのがあります。
Start Tomcatの作業ファイルは、
自分のフォルダ\スタート メニュー\プログラム\Apache Tomcat 4.0
になっています。つまり、スタートメニューの中。
ログが起動すると、そこの下に、ログファイルを作ろうとするから。
作業フォルダを違う場所に変えれば、そこの下にできる
で、さらにおどろいたことに、Tomcatは、javaの上で動いているようだ。
プロパティダイアログのリンク先を見て知った。
さらに驚いたことに、私の場合、1.3のjavaが起動するようになっていた。
道理で、MySQLで、クラスパスに1.4.2のjarのありかを追加しても、Connector/J 3.1(javaなどのプログラムからMySQLのDBアクセスのとき必要)だと、java.lang.NoClassDefFoundError: java/sql/Savepointが出るわけだ。
1.3で動いているんだもん!
(Connector/J 3.1は、1.4.0以上でないと動かない)
うーん、ウィリアムのいたずらだあ!