Giter VIP home page Giter VIP logo

Comments (2)

aalexand avatar aalexand commented on June 28, 2024 3

There is also a flavor of 1) where the profiler returns a snapshot of the data, but the data is actually cumulative since the process start. I think this still fits the DELTA type and it's just a matter of capturing in the profile the right time window to express over what time interval the data was recorded.

Thinking more about this, I think we do need to distinguish "delta over the profiling duration" (example: CPU time over 10 seconds in a CPU profile), "cumulative since process start" (example: cumulative alloc bytes in Go heap profiles) and "gauge aka instantaneous value" (example: current heap live bytes in a C++ or Go heap profile's "in use" metrics).

I also wonder if the "aggregation temporality" name could be clearer.

from opentelemetry-proto.

aalexand avatar aalexand commented on June 28, 2024

I think this profiler's proto enum was copied from the metrics proto because we expected that it would need some customization. That customization hasn't happened yet.

TBH the current DELTA and CUMULATIVE values in the num are not 100% match, I think they still (especially the comments) carry a bit of monitoring specifics, such as server restarts.

For profiling, common metric types are:

  1. Metric accumulated over the profiling duration. Example - CPU time profiler which runs for certain period of time (e.g. 10 seconds) and reports CPU*seconds consumed over that duration. I guess DELTA is more or less a fit here but the comment needs to be updated to be more relatable to profiling and include some examples (like CPU profiling that I mentioned).
  2. Gauge metrics that represent instantaneous value. Example - RAM / heap usage reported by a durationless profiler that simply takes a snapshot of the heap at a point in time. I don't think either DELTA or CUMULATIVE are a fit here.

There is also a flavor of 1) where the profiler returns a snapshot of the data, but the data is actually cumulative since the process start. I think this still fits the DELTA type and it's just a matter of capturing in the profile the right time window to express over what time interval the data was recorded.

from opentelemetry-proto.

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.