log4j

betterjonah 2004-07-12 12:52:27
我记得log4j可以动态的配置。
可是我修改了配置文件后,为何没见效。
我修改的是日志输出级别
...全文
179 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
betterjonah 2004-07-13
  • 打赏
  • 举报
回复
谢谢大家的热心回复:)
betterjonah 2004-07-13
  • 打赏
  • 举报
回复
dropship(飞翔的年代)谢谢你的热心回复。
不过可能是我没表达清楚,你没明白我的意思。
Banned(Evil) ,谢谢你的回复,我试试看。

Banned 2004-07-12
  • 打赏
  • 举报
回复
在代码中调用如下方法即可
PropertyConfigurator.configureAndWatch(configFile,delay)
dropship 2004-07-12
  • 打赏
  • 举报
回复
这下明白了吧!
dropship 2004-07-12
  • 打赏
  • 举报
回复
清楚了,请问你写日志用的什么语句?

如果一条log信息的级别,大于等于记录器的级别值,那么记录器就会记录它。如果你觉得难以理解,可参考下例。
// get a logger instance named "com.foo"
Logger logger = Logger.getLogger("com.foo");

// Now set its level. Normally you do not need to set the
// level of a logger programmatically. This is usually done
// in configuration files.
logger.setLevel(Level.INFO);

Logger barlogger = Logger.getLogger("com.foo.Bar");

// This request is enabled, because WARN >= INFO.
logger.warn("Low fuel level.");

// This request is disabled, because DEBUG < INFO.
logger.debug("Starting search for nearest gas station.");

// The logger instance barlogger, named "com.foo.Bar",
// will inherit its level from the logger named
// "com.foo" Thus, the following request is enabled
// because INFO >= INFO.
barlogger.info("Located nearest gas station.");

// This request is disabled, because DEBUG < INFO.
barlogger.debug("Exiting gas station search");

betterjonah 2004-07-12
  • 打赏
  • 举报
回复
当把
log4j.rootLogger=debug, stdout, R
改为
log4j.rootLogger=error, stdout, R
后,日志的输出没有任何改变。
为debug级别的日志同样输出了。
现在清楚么?
谢谢。
betterjonah 2004-07-12
  • 打赏
  • 举报
回复
log4j.rootLogger=debug, stdout, R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log

log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1

log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
manzhi 2004-07-12
  • 打赏
  • 举报
回复
level of a logger 是可以通过属性文件设置的,还是那句话,将你的配置文件贴出来看看吧
betterjonah 2004-07-12
  • 打赏
  • 举报
回复
我看log4j的文档,log4j可以动态的配置。
按我的理解,那么日志的输出级别也可以动态的修改。
开始我使用的日志输出级别是debug,我在程序中有一个死循环,不停的输出级别为debug的日志。
我在程序的运行过程中,将日志输出级别修改为error,但是debug日志还是输出了。停止程序,重新启动后,debug日志不再输出。就是这样。表达还不清楚么?
你们试过动态的修改日志的输出级别么?
eclipse0016 2004-07-12
  • 打赏
  • 举报
回复
log4j的配置好像只会被读取一次哦,最好重启一下程序吧。
manzhi 2004-07-12
  • 打赏
  • 举报
回复
这样表达,人家怎么能帮你呢 出了什么错, 说明白些
betterjonah 2004-07-12
  • 打赏
  • 举报
回复
配置文件位置正确:
理由,修改配置文件后,重新运行程序,能够按修改后的配置文件运行。
配置文件是log4j自带的例子,properties的。
调用就是按照log4j的例子完成初始化的阿。
dropship 2004-07-12
  • 打赏
  • 举报
回复
贴出你的配置文件,和你的调用方式,你这样谁知道问题?
blackrain06 2004-07-12
  • 打赏
  • 举报
回复
具体的贴出来看看
manzhi 2004-07-12
  • 打赏
  • 举报
回复
你所配置的属性文件放在正确的类路径吗

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧