首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为给定的协议实例设置JGroups的协议日志级别

为给定的协议实例设置JGroups的协议日志级别
EN

Stack Overflow用户
提问于 2013-08-20 08:23:52
回答 1查看 2.1K关注 0票数 3

我有一个JGroups设置,它有多个JGroups协议栈(例如,一个用于应用服务器,此处为JBoss EAP5,另一个用于自定义应用程序)。

我希望将JGroups的协议日志级别设置为给定级别,但只针对给定的协议实例,而不是全局记录器。也就是说,我想设置日志级别,但只针对协议栈,而不是其他协议栈。这用于调试我的自定义应用程序JGroups协议栈。

我开始为日志配置( logging configuration,log4j)中的给定协议全局设置日志级别,但这对于所有协议栈都是活动的。因此,会产生许多日志消息。

然后,我尝试了一种更好的方法:所有JGroups协议Protocol的超类都有一个方法setLevel,该方法可以用来设置日志级别(可以通过编程或通过XML文件进行配置)。由于Protocol.setLevel(String)只能从JGroups 2.8.0中获得,所以我隔离了EAR类加载程序,以便从JBoss EAP5服务器覆盖JGroups 2.6.20。但是效果与全局配置相同:日志级别是为所有协议栈设置的。

是否有方法为给定的协议配置JGroups日志记录级别?如果是,怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-24 13:26:45

您不能这样做,因为记录器是与类名绑定的,而不是与类加载器绑定的。

然而,有一些解决办法:

  • <TRACE/>配置文件(即文件末尾)的协议栈底部添加一个jgroups.xml<HDRS/>协议:这将显示发送到System.out上的向上或向下协议的任何Event
  • print_local_addr协议中将true属性设置为GMS:这将在System.out上显示本地地址。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18330282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档