OTEP 0049: LabelSet specification (to match current Metrics spec)#49
OTEP 0049: LabelSet specification (to match current Metrics spec)#49bogdandrutu merged 22 commits intoopen-telemetry:masterfrom
Conversation
songy23
left a comment
There was a problem hiding this comment.
./text/0000-metric-label-set.md:97:310: "acceptible" is a misspelling of "acceptable"
make: *** [Makefile:16: misspell] Error 2Please fix.
bogdandrutu
left a comment
There was a problem hiding this comment.
Overall looks like this proposal removes the Handle and replace it with raw APIs on metrics that accepts a LabelSet. I think this is too much statsd model centric and we penalize all the new modern systems/protocols like prometheus and openmetrics.
If we move forward with what we agreed that all the operations happens on a Handle (except the batch record) then the only place where this optimization may have an effect is on the batch.
Based on my experience when we used the batch version like grpc/http the labels are not known at compilation time, so the label set must be constructed for every individual request so this optimization does not have any effect (adds more overhead most likely because I need to create an extra object LabelSet).
I am not sure that we need this for the moment.
Co-Authored-By: dyladan <dyladan@users.noreply.github.com>
Co-Authored-By: dyladan <dyladan@users.noreply.github.com>
Co-Authored-By: dyladan <dyladan@users.noreply.github.com>
Co-Authored-By: Tyler Yahn <MrAlias@users.noreply.github.com>
iredelmeier
left a comment
There was a problem hiding this comment.
LGTM overall.
I think it's worth making it very, very clear what is expected to live in the API and what will need to be re-implemeneted by each SDK.
Co-Authored-By: Isobel Redelmeier <iredelmeier@gmail.com>
bogdandrutu
left a comment
There was a problem hiding this comment.
LG overall, some comments left
text/0049-metric-label-set.md
Outdated
| In languages where overloading is a standard convenience, the metrics API may elect to offer alternate forms that elide the call to `Meter.Labels()`, for example: | ||
|
|
||
| ``` | ||
| instrument.GetHandle(meter, { Key: Value, ... }) |
There was a problem hiding this comment.
I think this needs to be updated because instrument is now generated by the meter so no need to pass that.
|
One comment: |
|
Your last question about named meters kind of made my head explode. I wish we had a standard term for the thing which is shared by all named meters, is that "provider", is that "engine", is that "SDK"? I would state that labels are usable by any meter from the same provider. I'm adding this text |
|
This PR was opened for a long time and it has 3 official approver LGTM + few others coming from people interested in metrics. Entering God mode and merge this. |
…en-telemetry#49) * Draft LabelSet spec * Typos * Add notes on performance expectations * Typo * Updates to use Monotonic/NonMonotonic, and NonNegtive/Signed * Revert * PR number 49 * Major revision to match the already-merged specification on LabelSet * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Accept suggested phrasing * Revert mod changes eh? * Update text/0049-metric-label-set.md Co-Authored-By: Tyler Yahn <MrAlias@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: Isobel Redelmeier <iredelmeier@gmail.com> * Remove explicit meter argument where not necessary
…en-telemetry#49) * Draft LabelSet spec * Typos * Add notes on performance expectations * Typo * Updates to use Monotonic/NonMonotonic, and NonNegtive/Signed * Revert * PR number 49 * Major revision to match the already-merged specification on LabelSet * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Accept suggested phrasing * Revert mod changes eh? * Update text/0049-metric-label-set.md Co-Authored-By: Tyler Yahn <MrAlias@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: Isobel Redelmeier <iredelmeier@gmail.com> * Remove explicit meter argument where not necessary
…en-telemetry#49) * Draft LabelSet spec * Typos * Add notes on performance expectations * Typo * Updates to use Monotonic/NonMonotonic, and NonNegtive/Signed * Revert * PR number 49 * Major revision to match the already-merged specification on LabelSet * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Accept suggested phrasing * Revert mod changes eh? * Update text/0049-metric-label-set.md Co-Authored-By: Tyler Yahn <MrAlias@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: Isobel Redelmeier <iredelmeier@gmail.com> * Remove explicit meter argument where not necessary
…en-telemetry/oteps#49) * Draft LabelSet spec * Typos * Add notes on performance expectations * Typo * Updates to use Monotonic/NonMonotonic, and NonNegtive/Signed * Revert * PR number 49 * Major revision to match the already-merged specification on LabelSet * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: dyladan <dyladan@users.noreply.github.com> * Accept suggested phrasing * Revert mod changes eh? * Update text/0049-metric-label-set.md Co-Authored-By: Tyler Yahn <MrAlias@users.noreply.github.com> * Update text/0049-metric-label-set.md Co-Authored-By: Isobel Redelmeier <iredelmeier@gmail.com> * Remove explicit meter argument where not necessary
This proposal was discussed in the Sept 10, 2019 metrics call.