FWIW, Zabbix supports grabbing data from Prometheus endpoints [1] as well.
Justin [1] https://www.zabbix.com/documentation/4.4/manual/config/items/itemtypes/prometheus On Mon, Dec 21, 2020 at 2:31 PM Justin Bertram <jbert...@apache.org> wrote: > If you're open to using something other than Zabbix you might consider a > solution like Prometheus with Grafana. Artemis supports a pluggable metrics > architecture [1] and there's a Prometheus plugin available here [2]. Both > Prometheus and Grafana are easy to set up and use and they're both quite > powerful as well as free. A sample Grafana dashboard is available here [3]. > Aside from relevant broker and queue statistics JVM GC, memory, and thread > stats are also exported. > > Whether you go with a metrics plugin or a more traditional JMX based > monitoring solution, probably the main thing you're going to want to keep > an eye on is your message counts. A message broker isn't designed to be a > data store so when message counts start to increase a lot things are going > to start behaving differently depending on your address-full-policy > configuration. > > Beyond that I'm not sure what else to recommend. So much depends on your > use-case which you haven't really described at all. > > The Zabbix "template" you cited is designed for ActiveMQ 5.x so it won't > work with Artemis (which has completely different MBeans). > > The JVM you're using should have MBeans for memory, GC, and thread stats. > > > Justin > > [1] > http://activemq.apache.org/components/artemis/documentation/latest/metrics.html > [2] https://github.com/jbertram/artemis-prometheus-metrics-plugin > [3] https://github.com/artemiscloud/grafana > > On Mon, Dec 21, 2020 at 11:02 AM Ben Warrick <horseatingwe...@gmail.com> > wrote: > >> Hello, >> >> I'm trying to put together a good monitoring strategy to keep Artemis >> healthy. I set up Zabbix, which is working pretty well, and I'm using >> jconsole to explore the JMX MBeans and troubleshoot. >> >> Right now I only have two alerts. One that watech for the secondary >> cluster >> to come up, and sends an email alert that the primary has failed. And a >> second where I divide HeapMemoryUsage.used by HeapMemoryUsage.max and send >> an alert if it's greater than 0.7. >> >> It's been suggested that I should monitor garbage collections -- the >> amount >> of CPU time spent and number of collections -- to detect if I'm running >> out >> of memory. >> >> I've also tried out this Zabbix template: >> https://github.com/topicusoverheid/zabbix-activmq-template It doesn't >> seem >> to work in Artemis though. After importing it, two "applications" are >> created (in Zabbix terms) but no "items" are created. I've tried out some >> of the MBeans it uses though. I don't think this is what I need though. >> >> Is there any guidance on this? A best practices or example showing all the >> different MBeans and how they're used to detect the kinds of problems >> Artemis is likely to run into? >> >> Thanks, >> >> Ben >> >