設定ファイルについては、こちらに書かれていますが、情報が少なすぎなので説明します。
# 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行の長さの最大長は255文字(バイト)です。
注意:先頭文字が「#」で、コメント行であっても255までです。
これを超えると、うまく読み込まれなくなります。
まず、使うことはないと思いますが、値については環境変数を使うことができます。
環境変数名は「${」と「}」の間にはさんでください。
例えば、
だと
のように展開されます(※もちろん、環境に依存します)。
他のキーに対する値に置換することもできます。
例えば、
だと、2つめは、
のように展開されます。
注意:ここでのキー名は、キー名の先頭の「log4j.」もしくは「log4cpp.」を取り除いたキー名です。
それと、定義順を逆にするとうまくいかないです。
なお、定義されてない環境変数名、あるいは、キー名が設定された場合、空文字で置換されます。