Code Monkey home page Code Monkey logo

Comments (9)

johrstrom avatar johrstrom commented on August 11, 2024

+1. I'm sorry for not getting back around to this. The prometheus documentation clearly says that we should do this as well as an exporter. In the coming weeks I'm going to redouble my efforts on this library.

from jmeter-prometheus-plugin.

johrstrom avatar johrstrom commented on August 11, 2024

This will be coming shortly in the 0.1.0 release. It's currently a very buggy branch at the moment, but the idea is that users will create whatever metrics they wish.

So the library itself won't dictate what metrics are created, users have full control on what metrics are created, their name, they're type and how they're updated.

from jmeter-prometheus-plugin.

johrstrom avatar johrstrom commented on August 11, 2024

To be clear, the prometheus documentation on why this is important is here.

In 0.2.0-rc3 there are different metrics for total, success and failure. Perhaps it would be better to combine all this functionality into 1 'thing' from a UX perspective, because they are indeed actually facets of the same phenomena.

The proposal for such a metric would be something like this functionality: my_metric turns into my_metric_success, my_metric_failure and my_metric_total with the appropriate labels. So, say, the initial case where something is successful _successful{foo="bar"} = 1 _failure{foo="bar"} = 0 and _total{foo="bar"} = 1.

from jmeter-prometheus-plugin.

johrstrom avatar johrstrom commented on August 11, 2024

@dirkjot I believe I've completed this functionality. I'm sorry it took so long. I've got it on this branch https://github.com/johrstrom/jmeter-prometheus-plugin/tree/dev and would like your feedback (or anyone's) if able.

from jmeter-prometheus-plugin.

dirkjot avatar dirkjot commented on August 11, 2024

I really like how you defined a new type, a much cleaner solution than I had in mind. The code changes are nicely isolated and everything looks excellent. I don't have a running Prometheus instance here so I cannot test it right now.

And by the way: Wow, that is amazing! It was always my plan to roll it out myself, but then I changed projects and life interfered. But I am sure a fair few people are waiting for this...

from jmeter-prometheus-plugin.

johrstrom avatar johrstrom commented on August 11, 2024

Thanks for the quick response!

I'm leaving all 4 use cases in the listener, just in case someone wants one individually.

  • counting success only
  • counting failure only
  • counting total
  • success_ratio which is all three of the above

I'll close the ticket when the feature gets released. Any other feedback on having all 4 use cases enabled is welcome too (by anyone).

from jmeter-prometheus-plugin.

dirkjot avatar dirkjot commented on August 11, 2024

I think that is the right thing to do: I have seen clients want any combination of the above.

My only other suggestion would be to point out in the docs that Prometheus is a metrics solution and inherently lossy. So when using it to monitor Jenkins state you may (in theory) miss an update, even though I have rarely seen this in practice. Only a solution made for eventing (like Kafka) would aim to guarantee zero missed updates. Like a high-quality lossy jpg image is often indistinguishable from a non-lossy png, but it is an inherently different solution.

from jmeter-prometheus-plugin.

johrstrom avatar johrstrom commented on August 11, 2024

This is in master and released in version 0.2.0. Thanks for the initiating the ticket and help along the way.

from jmeter-prometheus-plugin.

dirkjot avatar dirkjot commented on August 11, 2024

💯 👍 🌴

from jmeter-prometheus-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.