log4j 文件输出

可爱的阿蘑菇

可爱的阿蘑菇

2016-02-19 11:39

图老师设计创意栏目是一个分享最好最实用的教程的社区,我们拥有最用心的各种教程,今天就给大家分享log4j 文件输出的教程,热爱PS的朋友们快点看过来吧!
写一个动态生成Properties(log4j.properties加载到内存中的形式)的类,指定,可实现动态修改任何东西!
======================
目录不可以创建,但是log文件是自动创建得呢
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=C:beauser_projectsdomainlog

==============================

你可以将log4j的配置信息写在一个文件中,比如sort.properties
然后利用servlet对log4j进行初始化,使它在服务器启动的时候就初始化了log4j。
至于你要随时修改日志输出目的地的话,只要修改配置文件中的log4j.appender.A2.File就行了

===================================

sort.properties 内容如下:
#1 定义了两个输出端
log4j.rootLogger = debug, A1, A2

#2 定义A1输出到控制器
log4j.appender.A1 = org.apache.log4j.ConsoleAppender
#3 定义A1的布局模式为PatternLayout
log4j.appender.A1.layout = org.apache.log4j.PatternLayout
#4 定义A1的输出格式
log4j.appender.A1.layout.ConversionPattern = %-4r [%t] %-5p %c - %m%n

#5 定义A2输出到文件
log4j.appender.A2 = org.apache.log4j.RollingFileAppender
#6 定义A2要输出到哪一个文件
log4j.appender.A2.File = D:\hello.log
#7 定义A2的输出文件的最大长度
log4j.appender.A2.MaxFileSize = 1KB
#8 定义A2的备份文件数
log4j.appender.A2.MaxBackupIndex = 3
#9 定义A2的布局模式为PatternLayout
log4j.appender.A2.layout = org.apache.log4j.PatternLayout
#10 定义A2的输出格式
log4j.appender.A2.layout.ConversionPattern = %d{yyyy-MM-dd hh:mm:ss}:%p %t %c - %m%n

 ============================

初始化log4j的servlet代码如下:
package com.ctc.Init;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import org.apache.log4j.*;

public class Log4jInit extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK";
public static Logger logger = Logger.getLogger(Log4jInit.class.getName());

//Initialize global variables
public void init() throws ServletException {
//通过web.xml来动态取得配置文件
String prefix = getServletContext().getRealPath("/");
String file = getInitParameter("log4j-init-file");
// 如果没有给出相应的配置文件,则不进行初始化
if (file != null) {
PropertyConfigurator.configure(prefix + file);
}
}

public void doGet(HttpServletRequest req, HttpServletResponse res) {
}

}

////////////////////////////////////////////////////////////////
web.xml中的相关配置如下:
?xml version="1.0" encoding="UTF-8"?
web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"
display-namesystemapp/display-name
servlet
servlet-nameLog4jInit/servlet-name
servlet-classcom.ctc.Init.Log4jInit/servlet-class
init-param
param-namelog4j-init-file/param-name
param-valuesort.properties/param-value
/init-param
load-on-startup1/load-on-startup
/servlet
/web-app
展开更多 50%)
分享

猜你喜欢

log4j 文件输出

Web开发
log4j 文件输出

很详细的Log4j配置步骤

编程语言 网络编程
很详细的Log4j配置步骤

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

log4j详细的常用配置说明介绍

编程语言 网络编程
log4j详细的常用配置说明介绍

对于log4j的深层次的理解

编程语言 网络编程
对于log4j的深层次的理解

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Ant+Junit+Log4J+CVS进行XP模式开发的建立

编程语言 网络编程
Ant+Junit+Log4J+CVS进行XP模式开发的建立

用PHP生成自己的LOG文件

Web开发
用PHP生成自己的LOG文件

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

如何使用PHP中的字符串函数

如何使用PHP中的字符串函数

用JSP生成静态页面

用JSP生成静态页面
下拉加载更多内容 ↓