Search code examples
clojuremetricsmanifoldaleph

How to get metrics for manifold bus in the context of aleph


Given a bus created with Aleph/Manifold, how can you measure interesting metrics like throughput, latency, number of errors and timeouts?

(manifold.bus/event-bus (fn []
                            (s/stream 100 )))

Solution

  • Aleph has not built-in monitoring.

    You could build it yourself, either in your handler function (maybe using an atom) or using Netty straight away. There is a :bootstrap-transform argument which allows you to create a Netty ChannelHandler.

    This should allow you to use existing Netty performance monitoring solutions (this page may be useful).