Git Product home page Git Product logo

Comments (4)

danmayer avatar danmayer commented on June 14, 2024

interesting idea, and we could implement something to help with this... I will note, the way Ruby's coverage works you can't start after the server is running you need to do it as it does code loading when the server is booting... You can stop collecting but most of the instrumentation hooks still run, so it wouldn't do much in terms of reducing performance overhead or anything like that.

So with that in mind what are you trying to achieve or why would you want not have it running all the time? If you are concerned with overhead, setting a stop ENV var and restarting the servers is the best way to ensure no overhead impacts performance.

from coverband.

gregg-platogo avatar gregg-platogo commented on June 14, 2024

Yes, I'm concerned about the overhead. I thought being able to start it manually and collect metrics for an hour or so and then stop it to have a look at the metrics.

I understand now what you mean. You mention the stop ENV is this something that coverband already provides?

from coverband.

danmayer avatar danmayer commented on June 14, 2024

yeah, correct... so you would do a configuration change of the environment to toggle the measuring on and off... This is because the performance impact even if you stop collection still exists as the code is instrumented when loaded...

so the workflow for this would be:

  1. deploy with the env var COVERBAND_DISABLE_AUTO_START=true for no coverband no performance impact
  2. deploy with the env var COVERBAND_DISABLE_AUTO_START removed entirely, to turn on coverband
  3. deploy with the env var COVERBAND_DISABLE_AUTO_START=true to turn back off coverband ensuring no performance impact

from coverband.

gregg-platogo avatar gregg-platogo commented on June 14, 2024

Great will try that! Thanks a lot!

from coverband.

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.