У меня есть приложение с пружинной загрузкой, которое реализует службу маршрутизации верблюдов.Я хочу знать, являются ли очереди потребителей живыми или нет (потому что эти очереди не в моей системе).Я реализовал Уведомление о событиях, чтобы знать, вызвано ли событие обмена отправлено или нет.Но моя пользовательская реализация уведомления о событии не работает.Я могу видеть в журналах, когда запускается событие контекста верблюда, но это все.Никакое другое событие не регистрируется уведомителем о событии.Спасибо.
Это класс уведомлений о событиях мая:
@Component
public class MyLoggingSentEventNotifer extends EventNotifierSupport {
private static final Logger logger = LoggerFactory.getLogger(MyLoggingSentEventNotifer.class);
@Override
public void notify(final EventObject event) throws Exception {
if (event instanceof CamelContextStartedEvent) {
}
if (event instanceof ExchangeSentEvent) {
final ExchangeSentEvent sent = (ExchangeSentEvent) event;
log.info("Took {} millis to send to: {}", sent.getTimeTaken(), sent.getEndpoint());
}
if (event instanceof ExchangeCreatedEvent) {
final ExchangeSendingEvent sending = (ExchangeSendingEvent) event;
log.info("Sending to to: {}", sending.getEndpoint());
}
}
@Override
public boolean isEnabled(final EventObject event) {
if (event instanceof CamelContextStartedEvent) {
return true;
}
return false;
}
}