OFBiz调试技巧禅与道
1、如何调试OFBiz
首先你需要学习和熟悉OFBiz的教程与工具指导文档。指导文档特别重要,因为很多子主题内容不是排列最前的内容却可能导致问题的发生。你应该熟悉类似于Freemaker,beanshell,XML这些技术。你也应该有过处理那些与OFBiz无关问题的经验,比如处理数据库或服务器引起的问题。
现在,你应该仔细查看日志文件了解你错误发生的原因。OFBiz在日志文件中提供大量的信息,这些信息将有助于你了解你遇到的问题。它比处理的艺术更重要。哪些东西看上去工作有些特别,比如比如有些关联程序将导致或影响到的结果,你都可以在日志文件中找到。如果你确实无法在日志文件中发现任何有用的东西,这时增加你自己的日志信息直到你有足够的信息来发现实际的问题所在。
本指引将向你介绍OFBiz的日志文件工作情况,如何增加你自己的日志记录,以及一些常见信息的含义。这些知识的理解建立在你理解JAVA及其它相关的技术基础上,所有问题的焦点只在于OFBiz的概念与信息内容中。
2. OFBiz日志文件
OFBiz创建较多日志文件并将它们存储于logs/目录(在opentaps-0.9或更早版本中)或framework/logs/(在opentaps-0.9之后版本),文件有:
- ofbiz.log.? - 记录所有OFBiz生成日志信息。此文件将在满时自动循环创建新文件,即ofbiz.log是当前日志文件,ofbiz.log.1是较早些时间的日志文件,ofbiz.log.2是比ofbiz.log.1更早时间的日志文件,以此类推。
- console.log - 记录所有OFBiz在控制台界面运行显示的内容。也有可能无效。
- access_log.? - 类似于Apache httpd日志格式记录所有服务请求。很漂亮但对调试没有什么用处。
大多数据时间,你可以通过ofbiz.log或console.log来查询调试信息。因为它们有很多内容,所以你最好使用一个可以翻页与进行查找的编辑器来打开这些日志文件。
3、查找日志信息
Java日志信息最容易查找。它们的日志信息中通常有类名与行号生成:
111770[PaymentGatewayServices.java:776:INFO ] (Capture) Invoice [#10110] total: 38.54
Minilang方法日志中的类名均为Log.java,如: