chore(deps): update opentelemetry go #77
Reference in New Issue
Block a user
Delete Branch "renovate/opentelemetry-go"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
v1.60.0→v1.63.0v0.154.0→v0.157.0v1.60.0→v1.63.0v1.60.0→v1.63.0v0.154.0→v0.157.0v1.60.0→v1.63.0v1.60.0→v1.63.0v0.154.0→v0.157.0Release Notes
open-telemetry/opentelemetry-collector (go.opentelemetry.io/collector/component)
v1.63.0🛑 Breaking changes 🛑
pkg/exporterhelper: Replace histogram bucket boundaries forotelcol_exporter_queue_batch_send_size_bytesandotelcol_processor_batch_batch_send_size_byteswith a power-of-2 byte-scale set spanning 128 B to 16 MiB. (#15535)The previous boundaries included many small sub-kilobyte buckets that were not useful for byte-scale
payloads, and
otelcol_exporter_queue_batch_send_size_bytestopped out at 6000 bytes so nearly allobservations fell into the
+Infoverflow bucket. The new boundaries are powers of two from 128 Bto
1677721(16 MiB), giving a meaningful distribution for real batch payload sizes (including smalltimeout-flushed batches) and keeping the two
metrics directly comparable on the same dashboards. Dashboards or alerts that hard-code specific
levalues for these histograms will need to be updated.
processor/batch: Replace histogram bucket boundaries forotelcol_processor_batch_batch_send_size_byteswith a power-of-2 byte-scale set spanning 128 B to 16 MiB. (#15535)The previous boundaries included many small sub-kilobyte buckets that were not useful for byte-scale
payloads. The new boundaries are powers of two from 128 B to
1677721(16 MiB), giving a meaningfuldistribution for real batch payload sizes (including small timeout-flushed batches) and keeping the
metric directly comparable with
otelcol_exporter_queue_batch_send_size_byteson the same dashboards. Dashboards or alerts thathard-code specific
levalues for this histogram will need to be updated.💡 Enhancements 💡
all: Bootstrapconfig.schema.yamlfor core components (debug/otlp/otlphttp exporters, otlp receiver, batch/memory_limiter processors, memory_limiter/zpages extensions). Implements Phase 1 of the component configuration schema roadmap RFC. (#14543)Schemas are generated using the
schemagentool from opentelemetry-collector-contrib and hand-tuned to capturevalidation rules and references to shared library schemas (confighttp, configgrpc, configretry, exporterhelper,
etc.). A
.schemagen.yamlsettings file and agenerate-schemasMakefile target are added so the schemas canbe regenerated reproducibly.
pkg/service: Apply experimentalservice::telemetry::resource::detection/developmentresource detection to the Collector's internal telemetry resource. (#14311)This follows the OpenTelemetry configuration schema by treating
service::telemetry::resource::detection/development::detectorsas detector selection.Currently supported detector entries are
container,host,process, andservice.See the OpenTelemetry Configuration Go support table and search for
ExperimentalResourceDetectorfor current detector support:https://github.com/open-telemetry/opentelemetry-configuration/blob/main/language-support-status.md#go
Example:
pkg/service: Addservice.partialReloadfeature gate (Alpha) andservice.partialReloadReceiversfeature gate (Beta) that together restart only receivers on config reload when non-receiver config sections are unchanged, avoiding unnecessary disruption to processors, exporters, and extensions. Enable with--feature-gates=service.partialReload. (#5966)🧰 Bug fixes 🧰
exporter/debug: Fix the scope index printed by thenormalverbosity marshaler; each scope was labelled with its parent resource's index instead of its own position (#15541)Affected all four signals (logs, traces, metrics, profiles) — e.g. the second scope under a resource printed
#0instead of#1.pkg/config/configgrpc: FixWaitForReadyoption not being applied to gRPC client connections. (#15615)pkg/featuregate: Fix panic when a--feature-gatesvalue contains an empty comma-separated element (e.g.--feature-gates=alpha,) (#15536)An empty identifier now produces a returned error instead of an index-out-of-range panic during flag parsing.
pkg/service: Fix collector startup panic when a resource detector emits a slice-valued attribute (e.g. theprocessdetector'sprocess.command_args) (#15571)createResourcepassed the OTel SDK attribute value straight intopcommon.Value.FromRaw, whichonly accepts
[]anyfor slices, so any string, int, float, or bool slice resource attribute producedan
<Invalid value type>error and abortedservice.New. Slice-typed attributes are now convertedelement-wise.
pkg/service: Record status events reported by extensions (#15557)v1.62.0💡 Enhancements 💡
cmd/mdatagen: Add support for defining stability levels for resource attributes (#15312)cmd/mdatagen: Add semantic convention reference to resource attributes (#15313)processor/memory_limiter: Adding health events for the memorylimiter (#14700)Publish health event from memorylimiter using componentstatus.ReportStatus
🧰 Bug fixes 🧰
cmd/mdatagen: Removes the extra line in the documentation.md between extended description and table (#15458)exporter/otlp_http: Treat errors parsing successful (2xx) HTTP response bodies as permanent errors to prevent retrying already-accepted data. (#15386)When a server returns a 2xx status but the response body exceeds the 64kB read limit,
the body is truncated and proto unmarshaling fails. Previously this was treated as a
retryable error, causing duplicate data to be exported. Now it is marked as a permanent
error so the retry logic will not re-send data that was already accepted by the server.
pkg/config/configretry: Always validate BackOffConfig fields regardless of the Enabled flag. (#15437)pkg/service: Ensure receivers always start after all other components (#15495)There was previously a race condition where multiple receivers using a shared internal implementation,
such as the OTLP receiver, could start sending telemetry into a pipeline before all its components had fully started.
processor/memory_limiter: Fix degenerate collector performance when exporter has problems causing permanent CPU-burning GC loop (#4981)Forced GC runs now use exponential backoff when deemed ineffective
(still above soft limit and less than 5% reclaimed) to avoid preventing
recovery by overloading CPU with excessive GC runs. The cap on the
backoff interval is exposed via
max_gc_interval_when_soft_limitedandmax_gc_interval_when_hard_limited(both default30s); set either to0to disable backoff on that path.provider/env: Fix empty env var default resolving to nil instead of empty string (#14587)When using ${env:VAR:-} with an unset variable, the empty default now correctly
resolves to an empty string instead of nil.
v1.61.0🛑 Breaking changes 🛑
pkg/confighttp: Remove stabilized gateconfighttp.framedSnappy(#15420)pkg/configoptional: Remove stabilized gateconfigoptional.AddEnabledField. (#15421)pkg/confmap: Remove stabilized featuregateconfmap.newExpandedValueSanitizer(#15418)pkg/exporterhelper: Remove stable gateexporter.PersistRequestContext. (#15424)pkg/otelcol: Remove stable gateotelcol.printInitialConfig(#15425)pkg/service: Remove stable featuregatetelemetry.UseLocalHostAsDefaultMetricsAddress(#15419)pkg/xpdata: Remove stable gatepdata.enableRefCounting. (#15426)processor/memory_limiter: Rename deprecated memory limiter metrics to include thememory_limiterprefix (e.g.otelcol_processor_memory_limiter_*) to clarify they are specific to this processor. (#11203)🚀 New components 🚀
cmd/schemagen: Move theschemagenCLI from opentelemetry-collector-contrib to this repository ascmd/schemagen. (#14543)The tool's source is identical to the upstream contrib version
(github.com/open-telemetry/opentelemetry-collector-contrib/cmd/schemagen) except for the module path and
the test fixtures' namespace, which now reflect the collector module
(go.opentelemetry.io/collector/cmd/schemagen). A contrib-only integration test that pointed at three
contrib components is removed; contrib's existing
make generate-schemas+ git-diff CI continues toexercise the FactoryMaps feature against real-world components.
💡 Enhancements 💡
cmd/mdatagen: Add support for versioned metrics (#15309)Allows metadata to specify versioned metrics for migrating to new semantic conventions.
There are two scenarios catered for when the metric name stays the same during migration.
When a metric name stays the same but its type differs, just the latest metric is
emitted with the new type.
When a metric name stays the same but its attributes differ, the latest version
is emitted with combined attributes during the migration period.
cmd/schemagen: AddoverlayFilesupport to deep-merge hand-curated schema fragments into generated schemas. (#14543)Components can declare an
overlayFilein.schemagen.yamlpointing to a YAML filewhose keys are recursively merged into the auto-generated schema after generation.
This allows injecting descriptions, constraints, or additional properties that cannot
be derived from Go types.
Originally added to the contrib copy of
cmd/schemageninopen-telemetry/opentelemetry-collector-contrib#48917 and brought over with the tool
in this move.
cmd/schemagen: Add-pflag to specify a custom Go package pattern for the config struct. (#14543)The new
-pflag lets callers override the default.package pattern with an arbitraryGo package selector (e.g. a sub-package whose
Configtype schemagen should walk).Originally added to the contrib copy of
cmd/schemageninopen-telemetry/opentelemetry-collector-contrib#48966 and brought over with the tool
in this move.
🧰 Bug fixes 🧰
cmd/mdatagen: Fix an issue when the last feature gate is removed, stale files are left. (#15423)cmd/mdatagen: Fix known acronyms at the end of generated Go identifiers to be all-caps, same as in any other position (#15438)cmd/schemagen: Fix mode detection when using-pto target a package outside the current directory. (#15453)A new
-m component|packageflag is available as a manual override when auto-detection is not possible.Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate.
ℹ️ Artifact update notice
File name: go.mod
In order to perform the update(s) described in the table above, Renovate ran the
go getcommand, which resulted in the following additional change(s):Details:
go.opentelemetry.io/collector/component/componentstatusv0.154.0->v0.157.0go.opentelemetry.io/collector/consumer/xconsumerv0.154.0->v0.157.0go.opentelemetry.io/collector/featuregatev1.60.0->v1.63.0go.opentelemetry.io/collector/internal/componentaliasv0.154.0->v0.157.0go.opentelemetry.io/collector/pdata/pprofilev0.154.0->v0.157.0go.opentelemetry.io/collector/pdata/testdatav0.154.0->v0.157.0go.opentelemetry.io/collector/pipelinev1.60.0->v1.63.0go.opentelemetry.io/collector/processor/xprocessorv0.154.0->v0.157.0b7204e81a6tob4e38912b6b4e38912b6toa3ce21000ca3ce21000ctoa3b3de492fa3b3de492ftoac5211aab3ac5211aab3to31fdfde39c31fdfde39ctoc5e40624b9c5e40624b9tod1247f99f8View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.