Skip to content
This repository has been archived by the owner on Nov 8, 2022. It is now read-only.

Snap Jolokia collector plugin #1342

Closed
akantak opened this issue Nov 10, 2016 · 8 comments
Closed

Snap Jolokia collector plugin #1342

akantak opened this issue Nov 10, 2016 · 8 comments

Comments

@akantak
Copy link

akantak commented Nov 10, 2016

Hey,
I would like to use Snap but I would need to have Jolokia collector plugin for my Java/JMX applications.

Also it would be useful for Scala applications when using library for Jolokia for SBT

Thanks!

@mbbroberg
Copy link
Contributor

Great call @akantak! I was talking with @jtlisi about his use of Jolokia and that being a great target for collection. A few questions as someone who's never used it:

  • Is there a set of metrics that are more important than others for monitoring Java/JMX apps?
  • Is there a set of metrics that we should ignore/not collect?
  • Is there a good example application you'd recommend spinning up to test the plugin?

@khrisrichardson
Copy link

@mjbrender The table on page 5 of http://web.swcdn.net/creative/pdf/techtips/1309_SAM_Best_Practices_For_Monitoring_JMX.pdf doesn't look like an unreasonable starting point.

Latency, throughput, and queue length tend to suffice, with error rates thrown in for good measure.

Here's an implementation to cross-reference: https://github.com/influxdata/telegraf/tree/master/plugins/inputs/jolokia

Also here are some details regarding how to integrate jolokia with Cassandra for example: https://github.com/chrusty/telegraf-cassandra#the-solution

@karol-brejna-i
Copy link

karol-brejna-i commented Dec 19, 2016

In our case we have one Jolokia per app/pod (in contrast to having one Jolokia working with many JMX endpoints) so in initial attempt we were able to make some simplifications.

Our base idea for plugin is:

  • the plugin accepts a list of working Jolokia endpoints in dedicated section of snap config
  • on start, the plugin retrieves JMX metrics available on these endpoints; the metrics catalog is updated based on that
  • task config can hold one (or more) Jolokia endpoints to read the metrics from and the list of metrics it's interested in

This approach has the following consequences:

  • when the plugin starts, it requires that there is some Jolokia endpoint working
  • metrics catalog is updated once (because of the plugin lifecycle) - if there are new endpoints used in tasks, metrics they can handle are restricted to this list
    (which means even if the new endpoints introduce new metrics, new metrics cannot be served -- unless you change the global config to include the url and restart SNAP)

@akantak has already some working version of this. We'll share soon ;-)

@nanliu nanliu changed the title Wanted Jolokia snap collector plugin Snap Jolokia collector plugin Dec 20, 2016
@nanliu
Copy link
Contributor

nanliu commented Dec 20, 2016

@karol-brejna-i that sounds great, love to see what you guys have built.

@akantak
Copy link
Author

akantak commented Jan 9, 2017

https://github.com/intelsdi-x/snap-plugin-collector-jolokia

please share your ideas/opinions

@mbbroberg
Copy link
Contributor

@akantak so cool! I'll bring this up today and see who has time to run through it.

Curious - have you run this in any test or prod configurations? If so, I'd love to hear about the setup. cc @jtlisi

@akantak
Copy link
Author

akantak commented Jan 16, 2017

@mjbrender not yet, we had tested it on this on host and in docker image

@kjlyon
Copy link
Contributor

kjlyon commented Feb 22, 2017

@akantak, you rock! Thank you for raising this issue and then going above and beyond to contribute a Snap collector plugin for Jolokia!

To make your plugin even better, check out our tips in PLUGIN_AUTHORING. In there it explains how to get your plugin listed in our Plugin Catalog and the requirements for appropriate plugin statuses. Since the plugin exists now I am going to close this issue and take Jolokia off the plugin wishlist.

Thank you again for your contributions!

@kjlyon kjlyon closed this as completed Feb 22, 2017
kjlyon added a commit that referenced this issue Feb 22, 2017
Plugin is here: https://github.com/intelsdi-x/snap-plugin-collector-jolokia/tree/master
Discussion around plugin here: #1342

I pointed them to PLUGIN_AUTHORING to encourage developing their plugin enough to be added to our plugin catalog.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

7 participants