Comments (2)
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.
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:
- 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). - 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
orCUMULATIVE
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)
- Allow consumers to use map<string, AnyValue> instead of repeated KeyValue HOT 3
- Generated OpenAPI files wrongly encode enums
- Improve metrics.proto by mentioning Resource Attributes and Scope HOT 1
- How to use Java service to receive data in the OpenTelemetry (Otel) protocol? HOT 4
- Supporting JSON as-is encoding in OTLP HOT 2
- SPAN_FLAGS_TRACE_FLAGS_MASK is not defined HOT 3
- Fail to push limit HOT 5
- Retryable HTTP Statuses should be configurable HOT 3
- Specify version of the proto that introduced a field in the comments
- File Makefile with executable permissions HOT 2
- Fix outdated attribute examples in comments
- Example not available for Exponential Histogram & Summary metric types
- Define relationship between profile messages and pprof HOT 1
- Consider generalizing profile attributes optimization to other signals
- profiling spec - definition of common string values HOT 2
- In pprofextended proto, consider moving Location.type_index to Mapping HOT 4
- Probably unintentional proto field ID gaps in the Sample message in pprofextended
- Example JSONs use wrong key name cases HOT 2
- Document compatibility requirements for profiles HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opentelemetry-proto.