vs
> NodeMarkingInactiveEvent.publish( localPause );
The second statement is totally not logging because it doesn't have the word "logging" in it. ;-)
That being said... conceptually, I do like the generality of publishing an event that describes internal system state, rather than logging a string on some level. OTOH the logging is supposed to be human, rather than machine-readable. But it's also gotta be a heap more work to do it this way and, maybe you'll never know if the error occurred cause the service lost network for some period of time (because it can't write to the event bus either!)