如何配置OpenEJB客户端日志记录?

时间:2011-08-22 17:30:49

标签: log4j client openejb

我们正在使用连接到一个OpenEJB服务器容器的OpenEJB客户端。 OpenEJB服务器由Corosync和Pacemaker管理,用于故障转移操作。每当OpenEJB实例失败(由网络,硬件,JVM或其他问题引起)时,Corosync + Pacemaker在另一台机器上启动另一个OpenEJB服务器实例。这个过程相对较快,因此对我们的用例来说这不是问题。

虽然OpenEJB提供了本机故障转移机制,但我们仍然选择使用自己的机制来管理它,因为这样我们可以更好地控制客户端。一切都按预期工作,除了客户端日志过于冗长。我们要么将其关闭或进行微调以禁用连接失败消息,例如:

  

22/08/2011 14:06:23 org.apache.openejb.client.StickyConnectionStrategy connect   AVISO:故障转移:无法连接到服务器:ejbd://192.168.1.5:4201例外:无法连接到服务器'ejbd://192.168.1.5:4201'。检查服务器是否已启动且指定的serverURL是否正确。请尝试下一步。

我已经尝试降低OpenEJB客户端中log4j的日志记录级别,但是我失败了。根据{{​​3}}和the log4j documentation,应该将所需级别设置为“错误”或“致命”。问题是,什么是类别名称?

我已经尝试过了:

  • p.put(“log4j.category.OpenEJB.client”,“error”);
  • p.put(“log4j.category.OpenEJB”,“error”);

但一切都没有改变。那么,我需要使用什么属性来关闭这些WARN消息?

2 个答案:

答案 0 :(得分:1)

客户端使用java.util.logging,因此应该可以通过连接到它的任何机制进行配置。

答案 1 :(得分:0)

只是将信息放在一起。为了控制OpenEJB客户端的日志记录机制,必须配置常规Java Logger:

//Get the logger
Logger logger=Logger.getLogger("OpenEJB.client");

//Change its behavior...
logger.setLevel(Level.SEVERE);

就是这样。