为什么log4j不能生成备份文件?【JAVA教程】

!
也想出现在这里? 联系我们
信息

为什么log4j不能生成备份文件?,第1张

概述为什么log4j不能生成备份文件?

我在windows 2003服务器R2上运行一些Java进程我使用的是Apache log4j-1.2.8。 我的所有进程通过一个jar文件调用不同的参数示例

java -jar process.jar one java -jar process.jar two java -jar process.jar three

我configurationlog4j.propertIEs后面

#=============================== # Declare Variables #=============================== logpath=${user.dir}/log/ simple_pattern=%d{yyyy-MM-dd HH:mm:ss.SSS}%-5x – %m%n backup_pattern=\’.\’yyyy-MM-dd #=============================== # PROCESS & STANDARD OUTPUT #=============================== log4j.logger.process.Process=NulL,proclog,procstdout log4j.appender.proclog=org.apache.log4j.DailyRollingfileAppender log4j.appender.proclog.file=${logpath}process.log log4j.appender.proclog.DatePattern=${backup_pattern} log4j.appender.proclog.layout=org.apache.log4j.PatternLayout log4j.appender.proclog.layout.conversionPattern=${simple_pattern} log4j.appender.procstdout=org.apache.log4j.ConsoleAppender log4j.appender.procstdout.layout=org.apache.log4j.PatternLayout log4j.appender.procstdout.layout.ConversionPattern=${simple_pattern} #=============================== # ONE #=============================== log4j.logger.process.log.One=NulL,one log4j.appender.one=org.apache.log4j.DailyRollingfileAppender log4j.appender.one.file=${logpath}one.log log4j.appender.one.DatePattern=${backup_pattern} log4j.appender.one.layout=org.apache.log4j.PatternLayout log4j.appender.one.layout.conversionPattern=${simple_pattern} #=============================== # TWO #=============================== log4j.logger.process.log.Two=NulL,two log4j.appender.two=org.apache.log4j.DailyRollingfileAppender log4j.appender.two.file=${logpath}two.log log4j.appender.two.DatePattern=${backup_pattern} log4j.appender.two.layout=org.apache.log4j.PatternLayout log4j.appender.two.layout.conversionPattern=${simple_pattern} #=============================== # THREE #=============================== log4j.logger.process.log.Three=NulL,three log4j.appender.three=org.apache.log4j.DailyRollingfileAppender log4j.appender.three.file=${logpath}three.log log4j.appender.three.DatePattern=${backup_pattern} log4j.appender.three.layout=org.apache.log4j.PatternLayout log4j.appender.three.layout.conversionPattern=${simple_pattern}

我第一次使用进程appender是单一的logging器,现在我把它分为一个,两个和三个logging器。 我的进程每隔1分钟执行一次。

所以。 我有大问题,我不知道为什么log4j不能生成备份文件。 但是当我通过命令行手动执行它是好的。

无法findexception的来源,以及它是什么样的exception

python听windows日志事件

Python – 在多处理环境中使用Streamhandler

在windows中,是否有相当于syslog或OS X的Console.applogging特定的错误?

将时间命令的输出保存到日志文件中

如何在SSIS中创build日志文件

batch file创build日志文件

Ruby gem\’ruby oci8\’返回错误:\’OCI.DLL:126(无法find指定的模块。)(LoadError)\’

开源的Syslog守护进程的windows

Bash命令logging器

您的log4j.propertIEs文件是否在调度程序执行的类路径中? 过去我也有类似的问题,这是由于配置文件不在类路径中。

你可以把它包含在你的process.jar文件中,或者像下面这样指定它的位置:

java -Dlog4j.configuration = file:///path/to/log4j.propertIEs -jar process.jar one

追加应该是默认的,根据javadocs,但值得在你的配置文件中指定,以消除歧义。 幸运的是,它可能会解决您的问题

log4j.appender.three.Append=true

非常感谢,我会再次尝试您的解决方案。

现在我的计划通过bgprocess.bat执行我的进程

bgprocess.bat

@echo off set CLAsspATH=.;%CLAsspATH% set path=C:j2sdk1.4.2bin;%path% javaw -jar process.jar %1

process.jar manifest.mf

Manifest-Version: 1.0 Ant-Version: Apache Ant 1.6.2 Created-By: 1.4.2 (IBM Corporation) Main-Class: process.Process Class-Path: ./lib/Utility.jar ./lib/DB2libRAD.jar ./lib/rowset.jar ./l ib/log4j-1.2.8.jar ./lib/com.ibm.mq.jar .

进程目录

– process.jar – bgprocess.bat – lib <dir> – log4j-1.2.8.jar – com.ibm.mq.jar – connector.jar – DB2libRAD.jar – rowset.jar – Utility.jar – log <dir> – one.log – two.log – three.log – process.log

并且所有日志文件正常工作,但是当传递备份时间时,它将被截断并在第一行开始新的日志。

总结

以上是内存溢出为你收集整理的为什么log4j不能生成备份文件?全部内容,希望文章能够帮你解决为什么log4j不能生成备份文件?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

© 版权声明
THE END
喜欢就支持一下吧
点赞136 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容