Как мне управлять jboss, чтобы начать запись после запуска приложения - PullRequest
1 голос
/ 27 июня 2011

Мы хотели бы отследить все действия при запуске приложения категории org.hibernate.type, поскольку мы хотели бы избежать всех журналов трассировки во время запуска приложения (поскольку это занимает много времени).

Примечание: В настоящее времяjboss6/server/default/deploy/jboss-logging.xml содержит TRACE для категории org.hibernate.type.

Можно ли разрешить запуск этого поста программным способом?

1 Ответ

0 голосов
/ 27 июня 2011

Напишите POJO для проверки состояния сервера JBoss - запущен он или нет. Вы можете подключиться к MBean: jboss.system: type = Server и проверить логическое свойство Started . Если он запущен, динамически измените уровень входа в Hibernate, используя что-то вроде этого:

Logger hibernate = (Logger)LoggerFactory.getLogger(<logger name>);
hibernate.setLevel(Level.TRACE);

Теперь вы можете связать этот POJO с вашим архивом приложений и запланировать его как кварцевое задание для запуска через минуту или около того. Когда POJO выполнит свою работу, отмените его последующее планирование.

Если вы не хотите планировать его как кварцевое задание, вы можете развернуть этот отдельный артефакт в папке deploy.last и позволить ему сразу же изменить уровень ведения журнала, не проверяя состояние сервера JBoss ,

...