问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

日志文件存放位置及配置文件有哪些

发布网友 发布时间:2022-05-07 15:13

我来回答

1个回答

热心网友 时间:2022-06-30 11:29

以DailyRollingFileAppender 为例:假设每天一个日志文件
有以下设置:

log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File=app.log
log4j.appender.A1.DatePattern='.'yyyy-MM-dd
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d %5p - %c -%-4r [%t] - %m%n

此时生成日志文件将位于tomcat的bin目录下,如要将日志文件保存在 :根目录/web-info/logs/下,个人有以下4种解决方案:
1 绝对路径
log4j.appender.A1.File=D:\apache-tomcat-6.0.18/webapps/项目/WEB-INF/logs/app.log
但这种写法灵活性很差

以下3中使用相同的设置原理: jvm的环境变量
2:spring的Log4jConfigListener
通过以下配置:
< context-param>
<param-name>webAppRootKey</param-name>
<param-value>webApp.root</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
</context-param>
< listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
...
log4j.appender.logfile.File=${webApp.root}/WEB-INF/logs/app.log
...
来解决
2:使用已有jvm变量:
例如:
log4j.appender.logfile.File=${user.home}/logs/app.log
日志将位于:例如windows:C:\Documents and Settings\joe\logs\app.log

3 自己设置目录,也就是在项目启动时通过System.setProperty设置
通过实现ServletContextListener来解决:例如

public class log4jlistener implements ServletContextListener {
public static final String log4jdirkey = "log4jdir";
public void contextDestroyed(ServletContextEvent servletcontextevent) {
System.getProperties().remove(log4jdirkey);
}
public void contextInitialized(ServletContextEvent servletcontextevent) {
String log4jdir = servletcontextevent.getServletContext().getRealPath("/");
//System.out.println("log4jdir:"+log4jdir);
System.setProperty(log4jdirkey, log4jdir);
}
}
web.xml配置:

<listener>
<listener-class>com.log4j.log4jlistener</listener-class>
</listener>

log4j.prtperties 配置:
log4j.appender.A1.File=${log4jdir}/WEB-INF/logs/app1.log
来解决。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 名师1+1导读方案:汤姆·索亚历险记目录 三星sm-g7200打开微信慢,无法正常收看,网速不慢。 笔记本电脑如何调亮屏幕亮度 大伙说说洗衣机要不要带烘干好 热烘干洗衣机怎么样 ef英语哪个好 用水灭火的原理为什么不是隔绝氧气 免费版和企业版有什么区别 为什么有些时候不能用水来灭火? 2021年了,springboot 就没有热部署sql的xml文件的办法吗??? navicat支持oracle吗 一道高一物理题。请问杆对A的支持力为何垂直于杆?很急,麻烦各位了! 这个图形PPT中如何制作出来。求解答。 在线等。 国际空间站是怎样建在太空里的 在空间站铁球也能悬浮吗 手机上的话筒能当拾音器用吗? 太空有浮力没?如果没浮力,那么空间站怎样在太空固定的,他为啥不会乱飘呢?也不会散架啊? 空间站为什么不建在月球上,而是选择漂浮在太空中? 拾音器怎么改成话筒输入 您好,我的手机号绑定新浪微博是也显示已经被绑定了,请问怎么取消绑定呢? 急急急!我被UIC的应用经济学和澳门科技大学的旅游酒店管理专业录取了,哪个更好?明天要定下来!!! 请哪位高手帮忙回答一下!关于澳门科技大学的几个问题?全回答才给全分 澳门科技大学酒店管理想研究生转澳门大学会计专业,GPA3.3总分为4.0。雅... 澳门科技大学的酒店管理专业排名怎样 生:澳门科技大学酒店管理专业学生出国读研选什么专业 澳科大mba上课是英文老师吗 水灭火的原理为什么是降低温度到着火点以下而不是隔绝空气(或氧气) 财产保险咨询 中国人民财产保险咨询电话 财产保险网上保险保险服务 微信朋友圈仅展示最近三天的朋友圈是什么意思 婚外情案件警察会查微信吗 婚外情如何收集证据 微信聊天记录可以作为婚外情的证据吗? 乡水泉空气净化器己通电就叫是什么原因尔净水器响个不停,什么原因 微信上的小视频,那种呢。你懂得,以前能保存到手机里,怎么现在保存不到手机里了,显示已保存到系统相册 净水器指示灯都正常,但报警一直响怎么回事? 怎样学自媒体 格力5012净水器电路板滴达滴达响是什么原因 学习自媒体都需要注意什么? 华硕笔记本K42JP主板支持多大单根内存?有几个内存插槽? 华硕笔记本K42JP开机黑屏 华硕笔记本K42JP不能开机 华硕笔记本电脑k42jp买什么样的内存条? 华硕笔记本k42jp和k42jv主板可不可以互换 K42JP华硕笔记本 怎么样调出NV控制面板