Reference: my own question on stackoverflow.
https://stackoverflow.com/q/47725873/839733
It appears that the log statement uses wiretap to change the output channel of the splitter to a DirectChannel which messes up the following logic in AbstractMessageSplitter.
boolean reactive = getOutputChannel() instanceof ReactiveStreamsSubscribableChannel;