Add Labels from a path as oc-collector attributes#463
Add Labels from a path as oc-collector attributes#463olix0r merged 15 commits intolinkerd:masterfrom
Conversation
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
3660139 to
bc52933
Compare
hawkw
left a comment
There was a problem hiding this comment.
I had a few minor nits & suggestions. In general, I agree with Oliver's comments on the label parsing code.
Also, unit tests for convert fn Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
|
@hawkw @olix0r K8s has gurantees on what kinds of keys and values it allows as labels. It allows the One concern I have is for future cases (i.e mesh expansion, etc), For Labels without value, Users have to add |
Can you elaborate on this? Can you give an example of how a user would interact with this? I would imagine that users never have to interact with any of this stuff outside of the normal k8s tooling? |
|
@olix0r Yep, no direct interaction as you mentioned but my concern was for future cases outside k8s (mesh expansion? ), where users would have to add the labels manually into a file, and even for labels without values, |
I don't think we'd ever do this, fwiw. |
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
olix0r
left a comment
There was a problem hiding this comment.
In order to merge this, we at least need to back out the current approach to namespaces. If namespaces are required, we need to figure out an alternate approach.
This reverts commit d8e6275. Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
Signed-off-by: Tarun Pothulapati <[email protected]>
This release includes a new protocol detection timeout, which prevents clients from consuming resources indefinitely when they do not send any data. Additionally: the proxy's admin endpoint now supports a `/live` endpoint for liveness checks, and a feature has been added to enrich tracing metadata from a file of label/values. --- * Add Labels from a path as oc-collector attributes (linkerd/linkerd2-proxy#463) * Add liveness endpoint to admin server (linkerd/linkerd2-proxy#470) * docker: Use buildkit for caching (linkerd/linkerd2-proxy#472) * Makefile: Use STRIP variable with strip as default (linkerd/linkerd2-proxy#475) * Add checksec to the release process (linkerd/linkerd2-proxy#476) * Time out protocol detect futures (linkerd/linkerd2-proxy#464) * Ensure that checksec is executable (linkerd/linkerd2-proxy#477) * Fix the checksec URL (linkerd/linkerd2-proxy#478) * Undo hardcoded release version (linkerd/linkerd2-proxy#479)
This release includes a new protocol detection timeout, which prevents clients from consuming resources indefinitely when they do not send any data. Additionally: the proxy's admin endpoint now supports a `/live` endpoint for liveness checks, and a feature has been added to enrich tracing metadata from a file of label/values. --- * Add Labels from a path as oc-collector attributes (linkerd/linkerd2-proxy#463) * Add liveness endpoint to admin server (linkerd/linkerd2-proxy#470) * docker: Use buildkit for caching (linkerd/linkerd2-proxy#472) * Makefile: Use STRIP variable with strip as default (linkerd/linkerd2-proxy#475) * Add checksec to the release process (linkerd/linkerd2-proxy#476) * Time out protocol detect futures (linkerd/linkerd2-proxy#464) * Ensure that checksec is executable (linkerd/linkerd2-proxy#477) * Fix the checksec URL (linkerd/linkerd2-proxy#478) * Undo hardcoded release version (linkerd/linkerd2-proxy#479)


Fixes linkerd/linkerd2#4008
This PR makes the proxy read file present at
/var/run/linkerd/podinfo/labelsand convert it into aHashMapand use those labels as attributes for spans/traces.linkerd/linkerd2#4199 updates the control-plane helm charts to mount pod labels as file to the proxy coontainer using downwardAPI
With these changes, Traces would have pod labels as attributes, Allowing us to directly link jager dashboard links from the Linkerd dashboard (like we do with Grafana), part of linkerd/linkerd2#4177 . This was not possible previously because we didn't have a way to know the distinguish traces based on
workloadKindandworkloadNameP.S: This is my first take in Rust and the proxy, Sorry if there are any mistakes :)
Signed-off-by: Tarun Pothulapati [email protected]