• Showing Page History #79560

設定ファイルの書き方

設定ファイルについては、こちらに書かれていますが、情報が少なすぎなので説明します。

# a simple test config

log4j.rootCategory=DEBUG, rootAppender
log4j.category.sub1=A1
log4j.category.sub2=INFO
log4j.category.sub1.sub2=ERROR, A2

log4j.appender.rootAppender=org.apache.log4j.ConsoleAppender
log4j.appender.rootAppender.layout=org.apache.log4j.BasicLayout

log4j.appender.A1=org.apache.log4j.FileAppender
log4j.appender.A1.fileName=A1.log
log4j.appender.A1.layout=org.apache.log4j.BasicLayout

log4j.appender.A2=org.apache.log4j.ConsoleAppender
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=The message %m at time %d%n

基本的なこと

基本的にはJavaのプロパティファイルの形式です。
と言っても良く分からないので、説明します。

形式

 形式は、

キー名=値

です。

 キー前後、および、値の前後にスペースがあってもかまいません。
すなわち、

____キー____=____値____________

となっていてもかまいません(※ここで「_」は半角スペースを表す)。

 ちなみに、キー名の先頭に「log4j.」あるいは「log4cpp.」があった場合、それは無視されます(削除された状態で管理される)。

コメント

「#」の後はコメントと見なされます。

1行の長さ

1行の長さの最大長は255文字(バイト)です。
注意:先頭文字が「#」で、コメント行であっても255までです。
これを超えると、うまく読み込まれなくなります。

環境変数や他のキーに対する値への置換

 まず、使うことはないと思いますが、値については環境変数を使うことができます。
環境変数名は「${」と「}」の間にはさんでください。
例えば、

test.subst.1=> ${HOME} <

だと

test.subst.1=> /home/takashi <

のように展開されます(※もちろん、環境に依存します)。

 他のキーに対する値に置換することもできます。
例えば、

appender.A4=org.apache.log4j.FileAppender
test.subst.3=> ${appender.A4} <

だと、2つめは、

test.subst.3=> org.apache.log4j.FileAppender <

のように展開されます。
注意:ここでのキー名は、キー名の先頭の「log4j.」もしくは「log4cpp.」を取り除いたキー名です。
それと、定義順を逆にするとうまくいかないです。

 なお、定義されてない環境変数名、あるいは、キー名が設定された場合、空文字で置換されます。