序
sa-struts-tutorialでは、
log4j.properties
log4j-1.2.13.jar
が同梱されており、またコンソールにログを出力するように、初期段階で設定されています。
ここでは、ログをファイルに出力するように設定を変更しましょう。
変更対象は、
sa-struts-tutorial\src\main\resources\log4j.properties
です。
改
log4j.properties
(変更前)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| log4j.category.org.seasar=DEBUG, C
log4j.additivity.org.seasar=false
log4j.category.tutorial=DEBUG, C
log4j.additivity.tutorial=false
log4j.appender.C=org.apache.log4j.ConsoleAppender
log4j.appender.C.Target=System.out
log4j.appender.C.ImmediateFlush=true
log4j.appender.C.layout=org.apache.log4j.PatternLayout
log4j.appender.C.layout.ConversionPattern=%-5p %d [%t] %m%n
log4j.rootLogger=INFO, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
|
↓
(変更後:log4j.appender.Cの属性設定を変更しています)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| log4j.category.org.seasar=DEBUG, C
log4j.additivity.org.seasar=false
log4j.category.tutorial=DEBUG, C
log4j.additivity.tutorial=false
log4j.appender.C = org.apache.log4j.FileAppender
log4j.appender.C.Append=true
log4j.appender.C.File = c:\\sample.log
log4j.appender.C.layout=org.apache.log4j.PatternLayout
log4j.appender.C.layout.ConversionPattern=%-5p %d [%t] %m%n
log4j.rootLogger=INFO, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
|
結
では、実際にアクションクラスからログを出力させてみましょう。ロガーインスタンスを取得して、ログ出力メソッド(logger.info)を呼びます。
AddAction.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
-
|
|
|
|
|
-
|
|
|
!
!
| import org.apache.log4j.Logger;
---
public class AddAction {
Logger logger = Logger.getLogger(AddAction.class);
----
@Execute(input = "index.jsp")
public String submit() {
result = Integer.valueOf(arg1) + Integer.valueOf(arg2);
logger.info("ログ出力します");
return "index.jsp";
}
}
|
として実行すれば、c:\\sample.logに以下のようにログが出力されます。
| INFO 2008-08-06 11:07:49,764 [http-8080-1] ログ出力します
|