【问题标题】:change log4j Logging level from INFO to DEBUG将 log4j 日志记录级别从 INFO 更改为 DEBUG
【发布时间】:2013-11-12 12:52:17
【问题描述】:
在我的java代码中,下面一行
getHibernateTemplate().save(billingCompany);
正在打印记录器消息
2013-11-11 14:05:20,962 INFO [STDOUT] 休眠:插入
billing_log_company (COMPANY_ID, BILLING_LOG_ID) 值 (?, ?)
但实际上我需要 DEBUG 来代替 INFO,如下所示:
2013-11-11 14:05:20,962 DEBUG [STDOUT] 休眠:插入
billing_log_company (COMPANY_ID, BILLING_LOG_ID) 值 (?, ?)
我的意思是我们不是在写 logger.info。 logger.debug 等。
getHibernateTemplate().save(billingCompany) 正在以 INFO 模式打印该记录器消息。
【问题讨论】:
标签:
java
hibernate
logging
log4j
【解决方案1】:
休眠消息本身就在休眠源代码中,您无法更改它。但是,您可以将 Hibernate 日志级别更改为 warn 或 debug。但这会使您的控制台充满大量日志
在您的日志属性文件中更改
log4j.logger.org.hibernate=info
到
log4j.logger.org.hibernate=debug
或
log4j.logger.org.hibernate=warn
【解决方案2】:
我不明白你的问题。如果你想在 spring hibernate 模板中使用DEBUG 而不是INFO,那么你将不得不更改它们的源代码。如果你想在我们自己的代码中使用DEBUG,只需使用
logger.debug(...)
【解决方案3】:
本杰明的方法很明确。
您必须使用一些 API 来记录日志,例如 log4j、promatter...
大多数 logger api 有不同的方法来记录不同的场景。
以log4j为例,
static Logger loggerfile = Logger.getLogger(ThisClass.class.getName());//creating logger instance
loggerFile.debug("debug");
loggerFile.info("info");
loggerFile.error("erre");