0.99.0
🛑 Breaking changes 🛑
operator: change java instrumentation feature gateoperator.autoinstrumentation.javainto command line flag--enable-java-instrumentation(#2673, #2582)operator: remove featuregateoperator.autoinstrumentation.nodejs. Use command line flag--enable-nodejs-instrumentationinstead (#2674)operator: remove featuregateoperator.autoinstrumentation.go. Use command line flag--enable-go-instrumentationinstead (#2675)target allocator: Removeoperator.collector.rewritetargetallocatorfeature flag (#2796)target allocator: Drop compatibility with older target allocator versions (#1907)
We've made a breaking change to the target allocator configuration in 0.93.0. This change removes operator
compatibility with target allocator versions older than that. Users running more recent target allocator versions
are unaffected.
🚀 New components 🚀
collector: Enable reconciliation of Collector v1beta1 CRD. See CRD changelog for detailed information. (#2620, #1907)
Users are expected to migrate tootelcol.v1beta1.opentelemetry.io.
The support forotelcol.v1alpha1.opentelemetry.iowill be removed in the future.
Follow migration guide for upgrading already created collector instances.
After allotelcol.v1alpha1.opentelemetry.ioare stored asv1beta1update the collector CRD to store onlyv1beta1
kubectl patch customresourcedefinitions opentelemetrycollectors.opentelemetry.io --subresource='status' --type='merge' -p '{"status":{"storedVersions":["v1beta1"]}}'.
OnlyAllNamespacesinstall mode is now supported due to the conversion webhook fromv1beta1tov1alpha1.
See OLM docs and
OLM operator groups docs.
💡 Enhancements 💡
collector: Changes metric port logic to use intermediary struct. (#2603)collector: Remove collector v1alpha1 defaulting and validating webhooks. (#2736)
The functionality was moved to the collector v1beta1 webhooks.
🧰 Bug fixes 🧰
-
auto-instrumentation: Add attributeservice.instance.idwhile pod is mutated. (#2679)
service.instance.idis expected to be<namespace>.<podName>.<containerName>But while pod is created it may not have the
podNameyet at the podMutator webhooks.This changed to use the env var
OTEL_RESOURCE_ATTRIBUTES_POD_NAMEwhich will be present at runtime.
<namespace>.$(OTEL_RESOURCE_ATTRIBUTES_POD_NAME).<containerName>Making a valid and complete value for
service.instance.idto be added. -
collector: Fixes a bug that would cause errant rollouts on a non-config related change. (#2899) -
collector: resolves a bug that would create a junk selector for the service by merging rather than overriding. (#2873) -
target allocator: Fix a metric relabel config unescaping bug (#2867)
If only metric relabel configs were present, without target relabel configs, unescaping wouldn't be applied, leading
to invalid Target Allocator configuration.