@SuppressWarnings("unchecked") void init() { bus.installBeforeDeliveryMessageInterceptor(new AbstractBeforeDeliveryMessageInterceptor() { @Override public void beforeDeliveryMessage(Message msg) { if (msg instanceof VmInstanceMessage) { final String vmUuid = ((VmInstanceMessage) msg).getVmInstanceUuid(); vmsToSkip.putIfAbsent(vmUuid, true); if (msg instanceof APIMessage) { final String apiId = msg.getId(); if (vmApis.putIfAbsent(apiId, vmUuid) == null) { logger.info(String.format("Skipping tracing VM[uuid:%s], due to %s, api=%s", vmUuid, msg.getMessageName(), apiId)); } } else { logger.info(String.format("Skipping tracing VM[uuid:%s], due to %s", vmUuid, msg.getMessageName())); } } } }, StartVmInstanceMsg.class, MigrateVmMsg.class, StopVmInstanceMsg.class, APIPauseVmInstanceMsg.class, APIMigrateVmMsg.class); }
bus.installBeforeDeliveryMessageInterceptor(new AbstractBeforeDeliveryMessageInterceptor() { @Override public void beforeDeliveryMessage(Message msg) {
@Override public boolean start() { BeanUtils.reflections.getSubTypesOf(NeedReplyMessage.class).stream().filter(clz -> !Modifier.isAbstract(clz.getModifiers())) .forEach(clz -> { MessageStatistic stat = new MessageStatistic(); stat.setMessageClassName(clz.getName()); statistics.put(clz.getName(), stat); }); bus.installBeforeDeliveryMessageInterceptor(this); bus.installBeforePublishEventInterceptor(this); bus.installBeforeSendMessageInterceptor(this); CloudBusGlobalConfig.STATISTICS_ON.installUpdateExtension((oldConfig, newConfig) -> { if (!newConfig.value(Boolean.class)) { messageStartTime.invalidateAll(); } }); jmxf.registerBean("CloudBus", this); return true; }
@Override public boolean start() { try { populateExtensions(); bus.installBeforeDeliveryMessageInterceptor(this); installValidatorToGlobalConfig(); } catch (RuntimeException e) { new BootErrorLog().write(e.getMessage()); throw e; } return true; }
@Override public boolean start() { bus.installBeforeSendMessageInterceptor(this); bus.installBeforeDeliveryMessageInterceptor(this); bus.subscribeEvent(e -> { if (e instanceof APIEvent) { APIEvent aevt = (APIEvent) e; messageTrackers.remove(aevt.getApiId()); } return false; }, new APIEvent()); startCleanupTimer(); return true; }
@Override public boolean start() { bus.installBeforeDeliveryMessageInterceptor(apiNotificationSender); bus.installBeforePublishEventInterceptor(apiNotificationSender);
installGlobalConfigUpdater(); bus.installBeforeDeliveryMessageInterceptor(new AbstractBeforeDeliveryMessageInterceptor() { @Override public void beforeDeliveryMessage(Message msg) {