我有一个应用程序在使用hibernate的jboss容器中运行。不过,我在使用hibernate进行日志记录时遇到了麻烦。当Hibernate初始化时我得到这些启动信息:控制休眠日志记录
2010-01-08 17:23:42,017 INFO [Configuration:1403] - Configuration resource: /hibernate.cfg.xml
2010-01-08 17:23:42,070 INFO [Configuration:1541] - Configured SessionFactory: null
等等。但是我想摆脱它们,因为它是无用的信息。我在我的log4j.properties以下配置:
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %-5p [%c{1}:%L] - %m%n
log4j.rootCategory = error, stdout
# Hibernate
log4j.logger.org.hibernate=error
log4j.logger.org.hibernate.tool.hbm2ddl=fatal
正如你可以看到记录不会匹配我ConversionPattern指定的格式。不过,我仍然收到INFO消息。我还使用了Asterisk-Java API:
# Asterisk java
log4j.logger.org.asteriskjava=error
这并不正常工作,我只能得到错误:
2010-01-08 17:31:46,948 ERROR [AgiConnectionHandler:156] - AgiException running AgiScript com.**** on Asterisk-Java DaemonPool-1-thread-2 org.asteriskjava.fastagi.AgiException: Number is on blacklist
所以我现在有点糊涂。
更新
当
-Dlog4j.debug
运行容器我得到:
log4j: Reading configuration from URL jar:file:*******.jar!/log4j.properties
log4j: Parsing for [root] with value=[error, stdout].
log4j: Level token is [error].
log4j: Category root set to ERROR
log4j: Parsing appender named "stdout".
log4j: Parsing layout options for "stdout".
log4j: Setting property [conversionPattern] to [%d %-5p [%c{1}:%L] - %m%n].
log4j: End of parsing for "stdout".
log4j: Parsed "stdout" options.
log4j: Parsing for [org.hibernate.tool.hbm2ddl] with value=[error].
log4j: Level token is [error].
log4j: Category org.hibernate.tool.hbm2ddl set to ERROR
log4j: Handling log4j.additivity.org.hibernate.tool.hbm2ddl=[null]
log4j: Parsing for [org.hibernate] with value=[fatal].
log4j: Level token is [fatal].
log4j: Category org.hibernate set to FATAL
log4j: Handling log4j.additivity.org.hibernate=[null]
log4j: Parsing for [org.asteriskjava] with value=[error].
log4j: Level token is [error].
log4j: Category org.asteriskjava set to ERROR
log4j: Handling log4j.additivity.org.asteriskjava=[null]
log4j: Finished configuring.
没有其他文件被加载任何。所以我想知道为什么它不起作用。此外,我试图创建会话出厂前执行以下操作:
Logger.getLogger("org.hibernate").setLevel(Level.ERROR);
没有成功要么...
我有一些想法是的,我会尝试你的建议。我知道%L问题,我有单独的文件用于生产/开发 – 2010-01-08 16:27:05
我已经用您的建议的结果更新了我的问题 – 2010-01-08 17:50:50