@@ -38,7 +38,7 @@ performing any real work, or making any network requests.
38
38
### Configuration and Setup
39
39
40
40
Kubernetes components should expose a flag, ` --tracing-config-file ` , which accepts a
41
- [ TracingConfiguration] ( https://github.com/ kubernetes/kubernetes/blob/cb989b84c82ab8c695d02c9a1866bc27de37caec/staging/src/k8s .io/component-base/tracing/ api/v1/types.go )
41
+ [ TracingConfiguration] ( https://kubernetes.io/docs/reference/config- api/apiserver-config.v1beta1/#apiserver-k8s-io-v1beta1-TracingConfiguration )
42
42
object. The ` component-base/tracing ` library provides a ` NewProvider() ` helper
43
43
to convert a TracingConfiguration to a TracerProvider, which can be used to
44
44
record spans. Components should avoid using OpenTelemetry globals, and instead
@@ -66,6 +66,10 @@ Follow the OpenTelemetry [guidelines for span naming](https://opentelemetry.io/d
66
66
### Tracing stability
67
67
68
68
Tracing instrumentation in Kubernetes components does not currently have
69
- stability guarantees. Component owners should avoid breaking context
70
- propagation, or removing trace instrumentation entirely. Component owners may
71
- rename spans, or span attributes.
69
+ stability guarantees, but component owners should be aware of which changes are
70
+ breaking to users so such changes are done with proper consideration. In
71
+ particular, is is breaking for users for a component to stop propagating
72
+ context in a way that breaks parent/child relationships for spans, to remove
73
+ spans without replacement, or to remove an attribute from a span without
74
+ replacement. Component owners should not treat general modification spans
75
+ (e.g. renaming the span, or renaming an attribute) as breaking.
0 commit comments