У меня есть настройка JGroups с более чем одним стек протоколов JGroups (например, один для сервера приложений, здесь JBoss EAP5 и один для настраиваемого приложения).Настройка уровня протокола протокола JGroups для данного экземпляра протокола
Я ищу, чтобы установить уровень протокола протокола JGroups на заданный уровень, но только для данного экземпляра протокола, а не для глобального регистратора. То есть Я хочу установить уровень журнала, но только для стека протоколов, а не для другого стека протоколов. Это используется для отладки моего настраиваемого стека протоколов JGroups.
Я начал устанавливать уровень журнала глобально для данного протокола в конфигурации ведения журнала (log4j), но он активен для всех стеков протоколов. Таким образом, создается большое количество сообщений регистрации.
Затем я попробовал более тонкий подход: суперкласс всех протоколов JGroups Protocol
имеет метод setLevel
, который может использоваться для установки уровня ведения журнала (который можно настроить либо программно, либо через файл конфигурации XML). Поскольку Protocol.setLevel(String)
доступен только от JGroups 2.8.0, я изолировал загрузчик классов EAR, чтобы переопределить JGroups 2.6.20 с сервера JBoss EAP5. Но эффект такой же, как и при глобальной конфигурации: уровень журнала установлен для всех стеков протоколов.
Есть ли способ настроить уровень ведения JGroups для данного протокола для данного протоколаStack? Если да, как это сделать?