Hey folks!

Unless I'm mistaken, we currently don't have many useful technical metrics about Mailman and HyperKitty. I've started writing a simple script that would collect those and output something we can eventually graph. It currently uses the "key: value" format that I've seen a lot of monitoring tools use, but I can adapt that to whatever we need.

I'm currently getting the following values :

- mailinglist count in HyperKitty
- email count in HyperKitty
- email senders count in HyperKitty
- user count in HyperKitty
- async task queue size
- number of async tasks run per minute
- async tasks average exec time
- size of the archiving queues in mailman and hyperkitty (should be zero most of the time)
- Mailman's shunt queue (for messages it failed to handle, usually encoding problems) 

Do you think there would be other values that we would need? My aim is to detect issues with the server usage (say, a spam attack) as well as anticipate growth. Another useful metric would be the number of emails sent by the system, but I guess we already have a Postfix plugin somewhere, so I'm trying to stay mailman & hyperkitty-specific here.

Currently the plugin takes between 5 and 10 seconds to collect the data. I don't know how precise we want our metrics but a run every five minutes seems sufficient to me. It also depends on how we can set that in collectd, which I don't know (yet!).

Thanks!

Aurélien