log4j的配置问题,实在是找不出问题呀~求救

发布于 2021-11-15 19:11:46 字数 428 浏览 687 评论 6

### set log levels ### 
log4j.rootLogger = INFO,FileLog,FileLogError
log4j.logger.com.kx=INFO,FileLog,FileLogError
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=[%d{dd/MM HH
              

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

秋意浓 2021-11-17 11:49:21

应该不是没有输出,楼主全盘搜一下日志文件,应该有很多一样的文件名, 你只是看的路径不一样

少女净妖师 2021-11-17 11:14:20

使用绝对路径时没问题.

hil2010这们兄弟的方法有效,问题是解决了.

但为什么原来那方法会得不到输出呢?

躲猫猫 2021-11-17 09:53:39

看看是不是路径问题,使用绝对路径排查一下

白龙吟 2021-11-17 01:03:34

我使用绝对路径时,输出日志正常 ,但使用相对路径,就输出不了,我是在web.xml中使用

<listener><listener-class>com.web.MyContextLoaderListener</listener-class></listener>

用程序计算出日志输出的绝对路径,再修改了log4j配置文件

@Override
	public WebApplicationContext initWebApplicationContext(
			ServletContext servletContext) {
		// TODO Auto-generated method stub
		String prefix = servletContext.getRealPath("/");
		String file = servletContext.getInitParameter("log4jConfigLocation");
		String filePath = prefix + file.substring(1);
		Properties props = new Properties();
		System.out.println(prefix);
		System.out.println(file);
		System.out.println(filePath);

		try {
		    FileInputStream log4jStream = new FileInputStream(filePath);
		    props.load(log4jStream);
		    log4jStream.close();
			    String logFile = prefix +props.getProperty("log4j.appender.FileLog.File"); //设置路径
			    String logFileError = prefix +props.getProperty("log4j.appender.FileLogError.File"); //设置路径
	
			    System.out.println(logFile);
			    System.out.println(logFileError);
			    props.setProperty("log4j.appender.FileLog.File", logFile);
			    props.setProperty("log4j.appender.FileLogError.File", logFileError);
			    PropertyConfigurator.configure(props); //装入log4j配置信息
		    
		} catch (IOException e) {
		    e.printStackTrace();
		}
		
		return super.initWebApplicationContext(servletContext);
	}

  

甜柠檬 2021-11-16 23:25:19

你确认文件输出前自己手动建立了??

笑红尘 2021-11-16 07:54:12

System.setProperty("webappHome", webappHome),其中webappHome可以通过servletContext.getRealPath("/")获得,

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文