2012-02-16 58 views
1

我们有一个基于MarkLogic,Java/GlassFish的系统。我们需要某种类型的系统来捕获这三个子系统中的任何一个抛出的异常,然后提供一个很好的基于Web的报告界面,在这个界面中可以查看,优先化,标记完成。我们在云中使用JIRA.com,所以如果有任何方法可以与之整合,那就太好了。更喜欢开源或廉价。是否有任何用于捕获和管理异常的通用异常处理框架?

我不确定基于Java的系统是否可以适应我们的MarkLogic错误,所以我相信我们需要一些与语言无关的东西。

谢谢。

回答

1

如果您使用MarkLogic“HTTP应用服务器”(而不是XCC或WebDAV)与MarkLogic进行通信,则可以使用错误处理程序配置作为捕获未处理异常的阻塞点。我从来没有尝试过,但理论上,在错误处理程序中,您可以发出http请求并将它们发送到任何你想要的地方。

http://docs.marklogic.com/5.0doc/docapp.xqy#display.xqy?fname=http://pubs/5.0doc/xml/dev_guide/appserver-control.xml%2387072

如果使用XCC,然后有其他地方把阻塞点在Java代码中。

0

MarkLogic默认将异常写入Data/Logs/ErrorLog.txt文件。 MarkLogic中的应用程序代码可以使用xdmp:log或trace()将消息记录到同一个文件中。如果GlassFish在同一主机上运行,​​则可以通过文件系统轻松访问该文件。它也可以通过MarkLogic中的App Server通过一些自定义XQuery代码进行披露。

GlassFish本身似乎是一个Java EE平台。我期望它使用Log4J之类的东西进行日志记录。 ErrorLog和Log4J日志中的日志消息可能不会被格式化为相同的格式,但基本属性应该存在,如日期/时间和错误消息。 Log4J日志记录也可以设置为写入日志文件。你可以像ErrorLog一样使用它。

我不知道任何报告此类日志记录的Web接口的错误,但我相信JIRA提供了一个HTTP API,可用于将信息推送到它。