Конфигурация пружины JMX для модуля Speci c - PullRequest
0 голосов
/ 17 апреля 2020

На данный момент у нас есть монолитное приложение, в котором все mbeans определены в одном месте. В будущем они будут перенесены и помещены в выделенные модули, каждый модуль будет иметь свое определение контекста весны.

Найдено @EnableMBeanExport (registration = RegistrationPolicy.IGNORE_EXISTING), полезное для перехода от исходного решения к новому подходу. Моя весенняя версия - 5.2.4

. Я бы хотел sh контролировать экспорт mbeans, но заметил из javado c (AnnotationMBeanExporter), что по умолчанию эта аннотация экспортирует ВСЕ mbeans из контекста весны. Это означает, что конфигурация jmx из модуля A будет публиковать sh mbeans из других модулей B или C, даже mbeans из сторонних библиотек будут доступны.

Я планировал установить конфигурацию JMX только для указанных c модули, которые хотели бы выставить mbeans и не уверены, что:

  • нужно изменить подход и поместить @EnableMBeanExport один раз, где-нибудь в основной конфигурации

  • необходимо создать новую аннотацию, которая изменит процесс по умолчанию

  • добавить sth к аннотации, чтобы активировать ее в указанном c модуле

1 Ответ

1 голос
/ 17 апреля 2020

См. Javadocs для @EnableMBeanExport.

 * <p>The resulting {@link org.springframework.jmx.export.MBeanExporter MBeanExporter}
 * bean is defined under the name "mbeanExporter". Alternatively, consider defining a
 * custom {@link AnnotationMBeanExporter} bean explicitly.
 *

Поэтому просто объявите AnnotationMBeanExporter как @Bean и настройте его так, чтобы регистрировать только нужные вам bean-компоненты.

См. Управление поведением при регистрации .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...