Documentation for a newer release is available. View Latest
Esta página no está disponible actualmente en Español. Si lo necesita, póngase en contacto con el servicio de asistencia de Icon (correo electrónico)

Subscribing to - then logging - all WARN and ERROR events

First we have a switch statement which filters the received events to only ERROR and WARN, and then we log the events using SLF4J (for example).

        eventBus.subscribe(new EventProcessor<>() {
            @Override
            public Predicate<IPFSystemEvent<?>> predicate() {
                return evt -> evt.getLevel() == EventLevel.WARN || evt.getLevel() == EventLevel.ERROR;
            }

            @Override
            public void notify(IPFSystemEvent<?> event) {
                switch (event.getLevel()) {
                    case ERROR:
                        log.error("An error event was raised: {}", event);
                        break;
                    case WARN:
                        log.warn("A warning event was raised: {}", event);
                        break;
                }
            }
        });