ric*_*all 5 java logging hibernate jdbc
环境:Hibernate 4.2.6
场景:hibernate为特定的"唯一约束PK_XXX违反"sql异常记录"ERROR".但是由于我们特定的多实例部署方案,我们需要将此调整为"INFO"级别,以用于此特定"唯一约束PK_XXX违反"sql异常.(所以它不会混淆IT人员).
换句话说,从技术上讲它是"错误",但从商业角度来看它是"信息".
目前:
2016.01.19 13.20.14,299 [ ERROR ][ ][ ][ ] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - logExceptions() ORA-00001: unique constraint (PK_LOCKINFO) violated
期望:
2016.01.19 13.20.14,299 [ INFO ][ ][ ][ ] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - logExceptions() ORA-00001: unique constraint (PK_LOCKINFO) violated
前进的最简单方法是什么?我能想到的选择:
具体的定制是:在"唯一约束PK_LOCKINFO违反"sql异常的情况下,将其记录为"INFO"级别而不是"ERROR"级别.但是任何其他sql异常仍应记录为"ERROR"级别.在我们前进的过程中,这一选择提出了挑战.每次hibernate升级时我们都必须这样做.
有一个类在我们自己的代码库中扩展和自定义hibernate类"org.hibernate.engine.jdbc.spi.SqlExceptionHelper"这样我们就不必编译一个"hibernate"jar了.这可能吗?
在我们的代码中添加一个事后监听器,它不断地扫描"log",然后对它做一些事情
不确定我是否喜欢选项#3.似乎太尴尬了.
还有其他选择吗?
我们最终选择了选项#2:有一个类来扩展和自定义 hibernate 类“org.hibernate.engine.jdbc.spi.SqlExceptionHelper”
| 归档时间: |
|
| 查看次数: |
924 次 |
| 最近记录: |