zoukankan      html  css  js  c++  java
  • java web使用log4j无法写入到日志文件

    项目环境

    1.项目类型:java web

    2.web容器:tomcat

    3.框架:spring

    4.调用代码:spring配置的定时任务,任务执行类用@Component注入(开始还以为是这里出了问题 ̄□ ̄||)

    主要现象

    1.启动tomcat后,发现日志无法写入

    2.删除日志文件再次启动,日志文件没有新建

    3.单独在类中执行main方法里的log操作可以写入到文件中

    4.启动tomcat后,日志可以输入到控制台,但是不能写入到文件中

    log4j.properties

    ####写入到文件!!没反应######
    log4j.logger.exceptions=info, exceptions
    log4j.appender.exceptions=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.exceptions.DatePattern='.'yyyyMMdd
    log4j.appender.exceptions.File=/data/wapage/log/appmanager/exceptions.log
    log4j.appender.exceptions.layout=org.apache.log4j.PatternLayout
    log4j.appender.exceptions.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} | %m%n
    ######输入到控制台!!有输出###########
    log4j.logger.test=info, A
    log4j.appender.A=org.apache.log4j.ConsoleAppender 
    log4j.appender.A.layout=org.apache.log4j.PatternLayout 
    log4j.appender.A.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} | %m%n

    解决方案

    问题在于日志文件的路径配置上

    文件路径要指定绝对路径不能指定相对路径

    配置成相对路径是,eclipse下能生成相对应的日志文件,但是web容器启动的时候是找不到这个路径的(为什么找不到,不是很清楚)。

    感谢解决方案作者:feiyeguohai http://feiyeguohai.iteye.com/blog/1824961

  • 相关阅读:
    JS定时器做物体运动
    JS做动态表格
    JS如何做2048(详细)
    改变 C/C++ 控制台程序的输出颜色和样式
    The Game Of Life – 数据结构与算法的敲门砖
    适用于 macOS 下 2K 显示器开启 HiDPI 的简便解决方案
    「踩坑记」Android API 判断权限申请结果的闪退问题
    Hello World!
    js 放大镜效果
    js 随机验证码生成及校验
  • 原文地址:https://www.cnblogs.com/erbin/p/4318216.html
Copyright © 2011-2022 走看看