程序中为什么用日志组件?
简单来说,为了项目后期部署上线后的维护、错误排查!
Log4j, log for java, 开源的日志组件!
使用步骤:
1. 下载组件,引入jar文件;
log4j-1.2.11.jar
2. 配置 : src/log4j.properties
3. 使用
log4j.properties:
# 通过根元素指定日志输出的级别、目的地:
# 日志输出优先级: debug < info < warn < error
log4j.rootLogger=info,console,file
############# 日志输出到控制台 #############
# 日志输出到控制台使用的api类
log4j.appender.console=org.apache.log4j.ConsoleAppender
# 指定日志输出的格式: 灵活的格式
log4j.appender.console.layout=org.apache.log4j.PatternLayout
# 具体格式内容
log4j.appender.console.layout.ConversionPattern=%d %p %c.%M()-%m%n
############# 日志输出到文件 #############
log4j.appender.file=org.apache.log4j.RollingFileAppender
# 文件参数: 指定日志文件路径
log4j.appender.file.File=../logs/MyLog.log
# 文件参数: 指定日志文件最大大小
log4j.appender.file.MaxFileSize=5kb
# 文件参数: 指定产生日志文件的最大数目
log4j.appender.file.MaxBackupIndex=100
# 日志格式
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d %c.%M()-%m%n
public class Index extends HttpServlet {
Log log = LogFactory.getLog(Index.class);
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
log.info("进入servlet");
int i = 1/0;
log.info("进入servlet结束");
} catch (Exception e) {
log.error("计算异常!",e);
}
}
}