Should PerfMon plugin support prometheus?

71 views
Skip to first unread message

p...@patdouble.com

unread,
Jul 25, 2018, 2:15:03 PM7/25/18
to jmeter-plugins
I'd like to use the features of the PerfMon plugin but my "servers" (containers actually) already have Prometheus running in them. If you don't know, Prometheus provides monitoring info as name-value pairs and exposes an HTTP endpoint in each monitored server/container. There is an aggregation server that combines them.

It seems like the Prometheus agent and PerfMon agent are very similar and there is a lot of capability in the existing PerfMon plugin that applies. It looks like the main difference is in the Transport class hierarchy. I'd also like to allow many of the other metrics available in Prometheus to be included.

I'm considering adding Prometheus support. Does this seem reasonable, or should I create a separate plugin?

andrewburt...@gmail.com

unread,
Jul 25, 2018, 7:21:07 PM7/25/18
to jmeter-plugins
It sounds like you're using JMeter in GUI mode, and pulling the data from Prometheus to JMeter to display (correct me if I've got this wrong).

If that's the case, you're probably better off writing a JMeter Backend Listener and pushing the JMeter JTL data into Prometheus instead. That way you can view JMeter activity data via whatever dashboarding mechanism you have already plugged into Prometheus.

Patrick Double

unread,
Jul 25, 2018, 11:04:09 PM7/25/18
to jmeter-...@googlegroups.com
I’m running JMeter in a CI environment in non-GUI mode. I’d like to be able to correlate JMeter results with system metrics and store them with test artifacts rather than in Prometheus. I suppose I could use a separate process to periodically pull the Prometheus data outside of JMeter and store in the test files. I’m not sure if there is an advantage of using JMeter to pull and store.

--
You received this message because you are subscribed to a topic in the Google Groups "jmeter-plugins" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jmeter-plugins/vqP50gvgOXY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jmeter-plugin...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


andrewburt...@gmail.com

unread,
Jul 26, 2018, 1:14:04 AM7/26/18
to jmeter-plugins
OK, I see what you mean.

I've done something similar in the past and rather than generating post-test artifacts using JMeter, I generated a URL link to the dashboard (Splunk in my case), filtered to the time period in question. Since I was pushing data from JMeter there anyway, and any investigation/interrogation would be done there, it made sense to just refer to the dashboard.

I think you'll have more success creating the backend listener to push JMeter data to Prometheus than configuring the perfmon plugin to pull data *from* Prometheus.

That way you'll have real-time JMeter activity being logged/displayed, rather than generating results post-test. And you'll be able to reference that directly, rather than pulling up a couple of JPGs.

To your question, I don't think there is any benefit of using JMeter to pull and store. Rather than JMeter being your source of truth, Prometheus (or Splunk. Or Sumo. Or ELK.) should be.

Reply all
Reply to author
Forward
0 new messages