jBPM-4.0中文开发指南-第8章软件日志

第 8 章 软件日志

8.1. 配置

PVM可以使用JDK日志(java.util.logging)或log4j.当第一个信息被记录, PVM日志会根据下面的过程进行选择:

1. 如果一个logging.properties资源被发现在 classpath(使用context classloader)下,然后JDK日志会被使用 这个文件会被用来实现JDK日志。

2. 如果log4j在classpath中找到,然后log4j会被用到。 对log4j的检测会通过检测context classloader中的 org.apache.log4j.LogManager来实现。

3. 如果没找到上面的,会使用JDK日志。

8.2. 目录

PVM类使用它们自己的类名作为日志的目录。

为了对PVM的类在做什么进行基本的激烈, 最好打开debug级别。 trace级别对于这个目的来讲 输出似乎太多了。

8.3. JDK日志

在JDK日志中,debug映射为fine, trace映射为finest. finer级别没有用到。

org.jbpm.pvm.internal.log.LogFormatter是pvm库的一部分, 它可以为日志信息创建一个很好的单行输出。 它也有一个灵活的功能,为每个线程创建一个唯一的标示。 想要配置它,这是一个常用的logging.properties

handlers = java.util.logging.ConsoleHandlerjava.util.logging.ConsoleHandler.level = FINESTjava.util.logging.ConsoleHandler.formatter = org.jbpm.pvm.internal.log.LogFormatter# For example, set the com.xyz.foo logger to only log SEVERE messages:# com.xyz.foo.level = SEVERE.level = SEVEREorg.jbpm.level=FINEorg.jbpm.tx.level=FINEorg.jbpm.pvm.internal.wire.level=FINE

8.4. 调试持久化

在测试持久化时,下面的日志配置是很有价值的。 目录org.hibernate.SQL显示执行的SQL语句, 目录org.hibernate.type显示查询中 设置的参数值。

org.hibernate.SQL.level=FINESTorg.hibernate.type.level=FINEST

一旦你获得一个失败处理,比如因为一个hibernate异常, 你可能希望把批处理大小设置为0,像这样在hibernate配置里:

hibernate.jdbc.batch_size = 0

也是在hibernate配置中,下面的配置允许记录 hibernate输出的SQL的日志细节:

hibernate.show_sql = truehibernate.format_sql = truehibernate.use_sql_comments = true

只要有信心,人永远不会挫败

jBPM-4.0中文开发指南-第8章软件日志

相关文章:

你感兴趣的文章:

标签云: