v0.27.46
Changes
build(deps): bump the all-go-mod-patch-and-minor group with 14 updates (#4174)
Bumps the all-go-mod-patch-and-minor group with 14 updates:
| Package | From | To |
|---|---|---|
| github.com/klauspost/compress | ||
1.19.1 |
1.19.2 |
|
| github.com/redis/go-redis/v9 | ||
9.21.0 |
9.22.0 |
|
go.opentelemetry.io/contrib/exporters/autoexport
| 0.69.0 | 0.70.0 |
|
go.opentelemetry.io/contrib/propagators/autoprop
| 0.69.0 | 0.70.0 |
|
go.opentelemetry.io/otel
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/bridge/opentracing
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/exporters/stdout/stdouttrace
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/metric
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/sdk
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/sdk/metric
| 1.44.0 | 1.45.0 |
|
go.opentelemetry.io/otel/trace
| 1.44.0 | 1.45.0 |
Updates github.com/klauspost/compress from 1.19.1 to 1.19.2
Release notes
Sourced from github.com/klauspost/compress's releases.
v1.19.2
What's Changed
- huff0: add arm64 assembly for Decompress4X/1X via avo lowering by
@lizthegreyin klauspost/compress#1172- zstd: Re-enable unsafe decodeSync memory copies (#1168) by
@lizthegreyin klauspost/compress#1171- zstd: fix arm64 asm frame offsets placing locals on the saved LR slot by
@lizthegreyin klauspost/compress#1176- zstd: avoid racing MaxDecodedSize write on shared dict litEnc by
@zanarellidevin klauspost/compress#1182- zstd: keep BuildDict recent-offsets positive and loadable by
@zanarellidevin klauspost/compress#1184- zstd: handle zero-literal BuildDict corpus by
@cyphercodesin klauspost/compress#1178- zstd: don't clear the registered dictionary when decoding past the window by
@sueun-devin klauspost/compress#1177New Contributors
@zanarellidevmade their first contribution in klauspost/compress#1183@cyphercodesmade their first contribution in klauspost/compress#1178@sueun-devmade their first contribution in klauspost/compress#1177Full Changelog: klauspost/compress@v1.19.1...v1.19.2
Commits
c3b3439zstd: don't clear the registered dictionary when decoding past the window (#1...9874bc9fix(zstd): handle zero-literal BuildDict corpus (#1178)71bb6fdzstd: keep BuildDict recent-offsets positive and loadable (#1184)3d4dacbzstd: avoid racing MaxDecodedSize write on shared dict litEnc (#1182)3ceaa81build(deps): bump the github-actions group with 5 updates (#1185)72cb4d3chore: add OpenSSF Scorecard GitHub Action (#1183)69c9db4zstd: fix arm64 asm locals overwriting the saved link register (#1176)117430dzstd: Re-enable unsafe decodeSync memory copies (#1168) (#1171)c73af0chuff0: add arm64 assembly for Decompress4X/1X via avo lowering (#1172)- See full diff in compare view
Updates github.com/redis/go-redis/v9 from 9.21.0 to 9.22.0
Release notes
Sourced from github.com/redis/go-redis/v9's releases.
9.22.0
This is a minor release introducing two flagship (experimental) features — client-side caching and automatic pipelining — alongside support for Redis 8.10, new commands, and a large batch of stability and parser-robustness fixes. It consolidates everything shipped in 9.22.0-beta.1, so the notes below cover the full 9.21.0 → 9.22.0 upgrade.
⚠️ Two changes to be aware of when upgrading from 9.21.0:
- Default configuration values changed (#3918): read/write timeouts, retry backoff, cluster state reload interval, and TCP keep-alive defaults are now aligned with the cross-SDK configuration proposal (see the highlight below). Explicitly configured values are unaffected.
WaitAOFreturn type corrected (#3888):WaitAOFnow returns*IntSliceCmd, matching the two-integer reply ofWAITAOF(previously*IntCmd, which failed to parse the reply at runtime). Code referencing the old return type needs a one-line update.🚀 Highlights
Client-Side Caching (Experimental)
The standalone
Clientgains server-assisted client-side caching built on RESP3CLIENT TRACKING. Enable it by settingClientSideCacheConfiginOptions(or supply your own cache viaClientSideCache— e.g. to share one cache across clients). Cacheable read results are served from a local in-process cache and invalidated automatically when the server reports a change, cutting round trips for read-heavy workloads.The invalidation architecture is selected by
ClientSideCacheStrategy; the default (and currently only) strategy isCSCStrategySharedTracking: one shared cache, every pool connection runs plainCLIENT TRACKING ON, and a background drainer applies buffered invalidations — portable (no BCAST) and consistent with the other Redis client libraries. Requirements and guardrails: RESP3 (Protocol: 3), standalone client, DB 0 only; commands that would change the connection identity (SELECT,AUTH, ...) are rejected while caching is enabled, and CSC is disabled when a credentials provider is set (fixedUsername/Passwordwork and are namespaced). See the README's client-side caching section and the runnable example.Experimental: the API may change in a minor release.
(#3941) by
@ofekshenawaAutomatic Pipelining (Experimental)
AutoPipelineris a background batcher that coalesces commands from many concurrent goroutines into Redis pipelines, multiplying throughput without any manual pipeline management. It comes in two faces, available onClientandClusterClient(and configurable viaOptions.AutoPipelineOptions/UniversalOptions.AutoPipelineOptions):
AutoPipeline()— the blocking face: a drop-inCmdablewhere each call blocks until executed, exactly like a plain client, while concurrent callers' commands batch together under the hood (measured locally over loopback: ~1M+ SET/sec vs ~100k unpipelined; indicative, not a guarantee). Per-goroutine command order is preserved.AsyncAutoPipeline()— the deferred face: command calls return immediately and every typed result accessor (Val/Result/Err/...) blocks until the command has executed. Submit a window of commands, then read the results, to keep pipelines deep (~2–3M SET/sec locally; indicative).
AutoPipelineOptionscontrols batching:MaxBatchSize(soft target, default 200; the blocking face's preset uses 300),MaxBatchBytes(approximate payload cap so huge values flush as several bounded writes),MaxFlushDelaywith optionalAdaptiveDelay(delay scales down as the queue fills), andMaxConcurrentBatches(default 1 = a single ordered batch stream; raising it requiresUnordered: true, so ordering is never lost by accident —Validate()rejects the combination otherwise). A usage tour and throughput comparison live inhttps://github.com/redis/go-redis/blob/HEAD/example/autopipeline.Experimental: the API may change in a future release — pin your go-redis version if you adopt it.
(#3942) by
@ndyakov, with help from@cxljsRedis 8.10 Support
This release adds support for Redis 8.10. The README's supported-versions list now includes Redis 8.10, and CI runs the full suite against the
redislabs/client-libs-test:8.10.0image by default (#3920, #3940).Coverage for the new commands and options that ship with Redis 8.10:
HIMPORT(#3919) — bulk hash import via server-side fieldsets, exposed asHImportPrepare,HImportSet,HImportDiscard, andHImportDiscardAll. Fieldsets are session state scoped to a single physical connection, which does not mix well with connection pooling — so the client keeps a versioned fieldset registry and lazily replays thePREPAREon whichever pooled connection executes aSETthat needs it, at most once per connection, with no extra round trip (thePREPAREis injected into the same write as theSET).LMOVEM/BLMOVEM(#3913) — move multiple elements between lists in one call.SUNIONCARD/SDIFFCARD(#3897) — cardinality of set union/difference without materializing the result.XREAD/XREADGROUPMAXCOUNTandMAXSIZE(#3898) — bound how much data a stream read returns.TS.READ(#3896),TS.QUERYLABELS(#3926),TS.NRANGE/TS.NREVRANGE(#3870) with multiple aggregators per key (#3937), andEXCLUDEEMPTYonTS.MRANGE/TS.MREVRANGE(#3912) — new time-series query surface.FT.ALIASLIST(#3925),COLLECTreducer forFT.AGGREGATE(#3886),RERANKon HNSW vector fields inFT.CREATE(#3927), andFT.HYBRIDtimeout warnings (#3911) — search coverage.Cross-SDK Aligned Defaults
Default configuration values now follow the cross-SDK configuration proposal shared by all Redis client libraries (#3918):
... (truncated)
Changelog
Sourced from github.com/redis/go-redis/v9's changelog.
9.22.0 (2026-08-03)
This is a minor release introducing two flagship (experimental) features — client-side caching and automatic pipelining — alongside support for Redis 8.10, new commands, and a large batch of stability and parser-robustness fixes. It consolidates everything shipped in 9.22.0-beta.1, so the notes below cover the full 9.21.0 → 9.22.0 upgrade.
⚠️ Two changes to be aware of when upgrading from 9.21.0:
- Default configuration values changed (#3918): read/write timeouts, retry backoff, cluster state reload interval, and TCP keep-alive defaults are now aligned with the cross-SDK configuration proposal (see the highlight below). Explicitly configured values are unaffected.
WaitAOFreturn type corrected (#3888):WaitAOFnow returns*IntSliceCmd, matching the two-integer reply ofWAITAOF(previously*IntCmd, which failed to parse the reply at runtime). Code referencing the old return type needs a one-line update.🚀 Highlights
Client-Side Caching (Experimental)
The standalone
Clientgains server-assisted client-side caching built on RESP3CLIENT TRACKING. Enable it by settingClientSideCacheConfiginOptions(or supply your own cache viaClientSideCache— e.g. to share one cache across clients). Cacheable read results are served from a local in-process cache and invalidated automatically when the server reports a change, cutting round trips for read-heavy workloads.The invalidation architecture is selected by
ClientSideCacheStrategy; the default (and currently only) strategy isCSCStrategySharedTracking: one shared cache, every pool connection runs plainCLIENT TRACKING ON, and a background drainer applies buffered invalidations — portable (no BCAST) and consistent with the other Redis client libraries. Requirements and guardrails: RESP3 (Protocol: 3), standalone client, DB 0 only; commands that would change the connection identity (SELECT,AUTH, ...) are rejected while caching is enabled, and CSC is disabled when a credentials provider is set (fixedUsername/Passwordwork and are namespaced). See the README's client-side caching section and the runnable example.Experimental: the API may change in a minor release.
(#3941) by
@ofekshenawaAutomatic Pipelining (Experimental)
AutoPipelineris a background batcher that coalesces commands from many concurrent goroutines into Redis pipelines, multiplying throughput without any manual pipeline management. It comes in two faces, available onClientandClusterClient(and configurable viaOptions.AutoPipelineOptions/UniversalOptions.AutoPipelineOptions):
AutoPipeline()— the blocking face: a drop-inCmdablewhere each call blocks until executed, exactly like a plain client, while concurrent callers' commands batch together under the hood (measured locally over loopback: ~1M+ SET/sec vs ~100k unpipelined; indicative, not a guarantee). Per-goroutine command order is preserved.AsyncAutoPipeline()— the deferred face: command calls return immediately and every typed result accessor (Val/Result/Err/...) blocks until the command has executed. Submit a window of commands, then read the results, to keep pipelines deep (~2–3M SET/sec locally; indicative).
AutoPipelineOptionscontrols batching:MaxBatchSize(soft target, default 200; the blocking face's preset uses 300),MaxBatchBytes(approximate payload cap so huge values flush as several bounded writes),MaxFlushDelaywith optionalAdaptiveDelay(delay scales down as the queue fills), andMaxConcurrentBatches(default 1 = a single ordered batch stream; raising it requiresUnordered: true, so ordering is never lost by accident —Validate()rejects the combination otherwise). A usage tour and throughput comparison live inhttps://github.com/redis/go-redis/blob/master/example/autopipeline.Experimental: the API may change in a future release — pin your go-redis version if you adopt it.
(#3942) by
@ndyakov, with help from@cxljsRedis 8.10 Support
This release adds support for Redis 8.10. The README's supported-versions list now includes Redis 8.10, and CI runs the full suite against the
redislabs/client-libs-test:8.10.0image by default (#3920, #3940).Coverage for the new commands and options that ship with Redis 8.10:
HIMPORT(#3919) — bulk hash import via server-side fieldsets, exposed asHImportPrepare,HImportSet,HImportDiscard, andHImportDiscardAll. Fieldsets are session state scoped to a single physical connection, which does not mix well with connection pooling — so the client keeps a versioned fieldset registry and lazily replays thePREPAREon whichever pooled connection executes aSETthat needs it, at most once per connection, with no extra round trip (thePREPAREis injected into the same write as theSET).LMOVEM/BLMOVEM(#3913) — move multiple elements between lists in one call.SUNIONCARD/SDIFFCARD(#3897) — cardinality of set union/difference without materializing the result.XREAD/XREADGROUPMAXCOUNTandMAXSIZE(#3898) — bound how much data a stream read returns.TS.READ(#3896),TS.QUERYLABELS(#3926),TS.NRANGE/TS.NREVRANGE(#3870) with multiple aggregators per key (#3937), andEXCLUDEEMPTYonTS.MRANGE/TS.MREVRANGE(#3912) — new time-series query surface.FT.ALIASLIST(#3925),COLLECTreducer forFT.AGGREGATE(#3886),RERANKon HNSW vector fields inFT.CREATE(#3927), andFT.HYBRIDtimeout warnings (#3911) — search coverage.Cross-SDK Aligned Defaults
Default configuration values now follow the cross-SDK configuration proposal shared by all Redis client libraries (#3918):
... (truncated)
Commits
c7f59a2chore(release): prepare 9.22.0 (#3947)c994cfcfeat(autopipeline): automatic command pipelining (#3942)228b463chore(deps): bump actions/stale from 10 to 11 (#3944)a6be850feat(csc): add standalone client-side caching (#3941)82b0213chore(release): prepare 9.22.0-beta.1 (#3940)8eb9583fix(rediscmd): redact credential args in AppendCmd (#3939)90fd088chore(ci): point 8.10 testing at custom client-libs-test image (#3938)93f961afeat(timeseries): support multiple aggregators per key in TS.NRANGE (#3937)49e0041feat(himport): HIMPORT command with lazy per-connection prepare (#3919)3dd9675fix(proto): peek push notification name without demanding 36 bytes (#3936)- Additional commits viewable in compare view
Updates go.opentelemetry.io/contrib/exporters/autoexport from 0.69.0
to 0.70.0
Release notes
Sourced from go.opentelemetry.io/contrib/exporters/autoexport's releases.
Release v1.45.0/v2.5.2/v0.70.0/v0.37.2/v0.25.0/v0.20.0/v0.16.2/v0.17.0
Overview
Added
- Add
go.opentelemetry.io/contrib/detectors/ibmcloud/vpc, a new resource detector for IBM Cloud VPC virtual server instances, ported fromgithub.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/ibmcloud/vpc. Detectscloud.provider,cloud.platform,cloud.region,cloud.availability_zone,cloud.account.id,cloud.resource_id,host.id,host.image.id,host.image.name,host.name, andhost.type. (#9011)- Add
go.opentelemetry.io/contrib/detectors/k8sapi, a new resource detector that queries the Kubernetes API. Detectsk8s.node.nameandk8s.node.uidwhenK8S_NODE_NAMEis set via the downward API, andk8s.cluster.uidderived from the kube-system namespace UID (works on any Kubernetes distribution). (#9108)- Add new
elasticbeanstalkresource detector for AWS Elastic Beanstalk, ported fromprocessor/resourcedetectionprocessor/internal/aws/elasticbeanstalkin opentelemetry-collector-contrib. (#8993)- The resource created by
go.opentelemetry.io/contrib/otelconfnow includes default SDK attributes. (#8990)- Add support for the
aws.ecsresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#8915)- Add support for the
aws.eksresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9138)- Add support for the
azure.vmresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9074)- Add support for the
gcpresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9137)- Add
go.opentelemetry.io/contrib/detectors/azure/azureappservice, a new resource detector for Azure App Service. Detectscloud.*,service.name,azure.resource_group.name,azure.app_service.instance.id, anddeployment.environment.namefrom theWEBSITE_*andREGION_NAMEenvironment variables. (#9289)- Add
azurecontainerappsresource detector for Azure Container Apps. (#8939)- Add
go.opentelemetry.io/contrib/detectors/azure/azurefunctions, a new resource detector for Azure Functions. Detectscloud.*,service.name,azure.resource_group.name,faas.instance, anddeployment.environment.namefrom theFUNCTIONS_*,WEBSITE_*,CONTAINER_NAME, andREGION_NAMEenvironment variables. (#9290)- Add
NewResourceDetectoralong with theWithAttributeFilterandWithTagKeyFilteroptions ingo.opentelemetry.io/contrib/detectors/azure/azurevm.WithAttributeFilterrestricts the returned resource to the attributes the filter accepts.WithTagKeyFilteropts in toazure.tag.<name>attributes for the VM tags whose keys satisfy the provided predicate; no VM tags are emitted without it. (#9162)- Add
go.opentelemetry.io/contrib/detectors/vultr— a new resource detector for Vultr Cloud Compute instances, ported fromprocessor/resourcedetectionprocessor/internal/vultrinopentelemetry-collector-contrib. Detectscloud.provider,cloud.platform,cloud.region,host.id, andhost.name. (#8995)Changed
- Upgrade
go.opentelemetry.io/otel/semconvtov1.43.0, including updates across instrumentation and detector modules. See semantic-conventions v1.43.0 release for complete details. (#9337)- Upgrade
go.opentelemetry.io/otel/semconvtov1.42.0, including updates across instrumentation and detector modules. See semantic-conventions v1.42.0 release for complete details. (#9196)- Use direct normalized-key lookups in
Carrier.GetandCarrier.Keysingo.opentelemetry.io/contrib/propagators/envcar. (#9112)- Update log bridge conversions to use attribute key-values instead of the removed log key-values in
go.opentelemetry.io/contrib/bridges/otellogr,go.opentelemetry.io/contrib/bridges/otellogrus,go.opentelemetry.io/contrib/bridges/otelslog, andgo.opentelemetry.io/contrib/bridges/otelzap. (#9180)- The
Version()function ingo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmuxhas been replaced byconst Version. (#9076)- Set
error.typeattribute instead of addingexceptionspan events ingo.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin. (#8977)- Prefer the gRPC dial target over the resolved peer IP for the
server.addressandserver.portattributes ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc. (#8904)- The detector in
go.opentelemetry.io/contrib/detectors/azure/azurevmnow also detectscloud.account.id,cloud.availability_zone,azure.vm.name,azure.vm.size,azure.vm.scaleset.name, andazure.resource_group.name, and prefersosProfile.computerNameforhost.name(falling back to the VM name), reconciling it with the collector-contrib Azure resource detector. (#9162)Fixed
- Fix Prometheus reader resource label filter configuration in
go.opentelemetry.io/contrib/otelconf/v0.2.0. (#9062)- Apply
resource.detection/development.attributes.includedandexcludedfiltering to resource detector attributes ingo.opentelemetry.io/contrib/otelconf/x. (#9131)- Honor the context configured with
WithContextwhen constructing resources ingo.opentelemetry.io/contrib/otelconfandgo.opentelemetry.io/contrib/otelconf/x. (#9160)- Handle nil response bodies from custom
RoundTripperimplementations ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttpwithout panicking. (#9184)- Fix incorrect (overestimated) sum calculation for runtime histograms in
go.opentelemetry.io/contrib/instrumentation/runtime. (#9063)- Fix
Severity.UnmarshalTextround trip for positiveFATALoffsets above the named range ingo.opentelemetry.io/contrib/processors/minsev. (#9197)- Reduce binary size by fetching ConfigMaps via
rest.HTTPClientForinstead of the Kubernetes clientset ingo.opentelemetry.io/contrib/detectors/aws/eks. (#9284)TextMapPropagatoringo.opentelemetry.io/contrib/propagators/autopropreturns the no-op propagator for empty input, matching the behavior ofnone. An unknownOTEL_PROPAGATORSvalue still returns an error with a nil propagator soNewTextMapPropagatorfalls back to the default TraceContext and Baggage propagators instead of disabling propagation. (#9163)- Preserve error-valued attributes nested in a group as grouped attributes instead of silently dropping them in
go.opentelemetry.io/contrib/bridges/otelslog. (#9238)- Fix a data race in
go.opentelemetry.io/contrib/bridges/otelslogwhere concurrentHandlecalls could corrupt each other's log attributes becausekvBuffer.KeyValuesreturned a slice aliasing a shared buffer. (#9229)- Avoid a panic in
go.opentelemetry.io/contrib/bridges/otelzapwhen a malformed error field contains a nil or non-error value. (#9068)- Use
azure.container_app.instance.idinstead ofservice.instance.idfor the replica name detected bygo.opentelemetry.io/contrib/detectors/azure/azurecontainerapps. (#9208)- Preserve the underlying metadata errors returned with partial resources from
go.opentelemetry.io/contrib/detectors/gcp. (#9069)- Copy
MultipartFormback to the requestotelmux.Middlewarewas given after the wrapped handler returns, sonet/httpcan find and remove the temp filesParseMultipartFormcreated on the context-derived request copy, whenotelmux.Middlewarewraps a handler directly, ingo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux. This does not cover a handler panic, nor the commonrouter.Use(...)integration, wheregorilla/mux's own routing step makes an additional request copy the middleware cannot write back through; see gorilla/mux#777. (#9361)- Report the
b3header fromFields()for the defaultB3Unspecifiedsingle-header injection encoding, matching whatInjectwrites, ingo.opentelemetry.io/contrib/propagators/b3. (#9273)- Fix
go.opentelemetry.io/contrib/propagators/aws/xrayproducing deterministic trace and span IDs when the seed read fromcrypto/randsilently failed, by switching tomath/rand/v2's concurrency-safe top-level generator. (#9359)
... (truncated)
Changelog
Sourced from go.opentelemetry.io/contrib/exporters/autoexport's changelog.
[1.45.0/2.5.2/0.70.0/0.37.2/0.25.0/0.20.0/0.16.2/0.17.0] - 2026-08-03
Added
- Add
go.opentelemetry.io/contrib/detectors/ibmcloud/vpc, a new resource detector for IBM Cloud VPC virtual server instances, ported fromgithub.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/ibmcloud/vpc. Detectscloud.provider,cloud.platform,cloud.region,cloud.availability_zone,cloud.account.id,cloud.resource_id,host.id,host.image.id,host.image.name,host.name, andhost.type. (#9011)- Add
go.opentelemetry.io/contrib/detectors/k8sapi, a new resource detector that queries the Kubernetes API. Detectsk8s.node.nameandk8s.node.uidwhenK8S_NODE_NAMEis set via the downward API, andk8s.cluster.uidderived from the kube-system namespace UID (works on any Kubernetes distribution). (#9108)- Add new
elasticbeanstalkresource detector for AWS Elastic Beanstalk, ported fromprocessor/resourcedetectionprocessor/internal/aws/elasticbeanstalkin opentelemetry-collector-contrib. (#8993)- The resource created by
go.opentelemetry.io/contrib/otelconfnow includes default SDK attributes. (#8990)- Add support for the
aws.ecsresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#8915)- Add support for the
aws.eksresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9138)- Add support for the
azure.vmresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9074)- Add support for the
gcpresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9137)- Add
go.opentelemetry.io/contrib/detectors/azure/azureappservice, a new resource detector for Azure App Service. Detectscloud.*,service.name,azure.resource_group.name,azure.app_service.instance.id, anddeployment.environment.namefrom theWEBSITE_*andREGION_NAMEenvironment variables. (#9289)- Add
azurecontainerappsresource detector for Azure Container Apps. (#8939)- Add
go.opentelemetry.io/contrib/detectors/azure/azurefunctions, a new resource detector for Azure Functions. Detectscloud.*,service.name,azure.resource_group.name,faas.instance, anddeployment.environment.namefrom theFUNCTIONS_*,WEBSITE_*,CONTAINER_NAME, andREGION_NAMEenvironment variables. (#9290)- Add
NewResourceDetectoralong with theWithAttributeFilterandWithTagKeyFilteroptions ingo.opentelemetry.io/contrib/detectors/azure/azurevm.WithAttributeFilterrestricts the returned resource to the attributes the filter accepts.WithTagKeyFilteropts in toazure.tag.<name>attributes for the VM tags whose keys satisfy the provided predicate; no VM tags are emitted without it. (#9162)- Add
go.opentelemetry.io/contrib/detectors/vultr— a new resource detector for Vultr Cloud Compute instances, ported fromprocessor/resourcedetectionprocessor/internal/vultrinopentelemetry-collector-contrib. Detectscloud.provider,cloud.platform,cloud.region,host.id, andhost.name. (#8995)Changed
- Upgrade
go.opentelemetry.io/otel/semconvtov1.43.0, including updates across instrumentation and detector modules. See semantic-conventions v1.43.0 release for complete details. (#9337)- Upgrade
go.opentelemetry.io/otel/semconvtov1.42.0, including updates across instrumentation and detector modules. See semantic-conventions v1.42.0 release for complete details. (#9196)- Use direct normalized-key lookups in
Carrier.GetandCarrier.Keysingo.opentelemetry.io/contrib/propagators/envcar. (#9112)- Update log bridge conversions to use attribute key-values instead of the removed log key-values in
go.opentelemetry.io/contrib/bridges/otellogr,go.opentelemetry.io/contrib/bridges/otellogrus,go.opentelemetry.io/contrib/bridges/otelslog, andgo.opentelemetry.io/contrib/bridges/otelzap. (#9180)- The
Version()function ingo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmuxhas been replaced byconst Version. (#9076)- Set
error.typeattribute instead of addingexceptionspan events ingo.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin. (#8977)- Prefer the gRPC dial target over the resolved peer IP for the
server.addressandserver.portattributes ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc. (#8904)- The detector in
go.opentelemetry.io/contrib/detectors/azure/azurevmnow also detectscloud.account.id,cloud.availability_zone,azure.vm.name,azure.vm.size,azure.vm.scaleset.name, andazure.resource_group.name, and prefersosProfile.computerNameforhost.name(falling back to the VM name), reconciling it with the collector-contrib Azure resource detector. (#9162)Fixed
- Fix Prometheus reader resource label filter configuration in
go.opentelemetry.io/contrib/otelconf/v0.2.0. (#9062)- Apply
resource.detection/development.attributes.includedandexcludedfiltering to resource detector attributes ingo.opentelemetry.io/contrib/otelconf/x. (#9131)- Honor the context configured with
WithContextwhen constructing resources ingo.opentelemetry.io/contrib/otelconfandgo.opentelemetry.io/contrib/otelconf/x. (#9160)- Handle nil response bodies from custom
RoundTripperimplementations ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttpwithout panicking. (#9184)- Fix incorrect (overestimated) sum calculation for runtime histograms in
go.opentelemetry.io/contrib/instrumentation/runtime. (#9063)- Fix
Severity.UnmarshalTextround trip for positiveFATALoffsets above the named range ingo.opentelemetry.io/contrib/processors/minsev. (#9197)- Reduce binary size by fetching ConfigMaps via
rest.HTTPClientForinstead of the Kubernetes clientset ingo.opentelemetry.io/contrib/detectors/aws/eks. (#9284)TextMapPropagatoringo.opentelemetry.io/contrib/propagators/autopropreturns the no-op propagator for empty input, matching the behavior ofnone. An unknownOTEL_PROPAGATORSvalue still returns an error with a nil propagator soNewTextMapPropagatorfalls back to the default TraceContext and Baggage propagators instead of disabling propagation. (#9163)- Preserve error-valued attributes nested in a group as grouped attributes instead of silently dropping them in
go.opentelemetry.io/contrib/bridges/otelslog. (#9238)- Fix a data race in
go.opentelemetry.io/contrib/bridges/otelslogwhere concurrentHandlecalls could corrupt each other's log attributes becausekvBuffer.KeyValuesreturned a slice aliasing a shared buffer. (#9229)- Avoid a panic in
go.opentelemetry.io/contrib/bridges/otelzapwhen a malformed error field contains a nil or non-error value. (#9068)- Use
azure.container_app.instance.idinstead ofservice.instance.idfor the replica name detected bygo.opentelemetry.io/contrib/detectors/azure/azurecontainerapps. (#9208)- Preserve the underlying metadata errors returned with partial resources from
go.opentelemetry.io/contrib/detectors/gcp. (#9069)- Copy
MultipartFormback to the requestotelmux.Middlewarewas given after the wrapped handler returns, sonet/httpcan find and remove the temp filesParseMultipartFormcreated on the context-derived request copy, whenotelmux.Middlewarewraps a handler directly, ingo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux. This does not cover a handler panic, nor the commonrouter.Use(...)integration, wheregorilla/mux's own routing step makes an additional request copy the middleware cannot write back through; see gorilla/mux#777. (#9361)- Report the
b3header fromFields()for the defaultB3Unspecifiedsingle-header injection encoding, matching whatInjectwrites, ingo.opentelemetry.io/contrib/propagators/b3. (#9273)- Fix
go.opentelemetry.io/contrib/propagators/aws/xrayproducing deterministic trace and span IDs when the seed read fromcrypto/randsilently failed, by switching tomath/rand/v2's concurrency-safe top-level generator. (#9359)- Strip connection number suffix from connection ID in
go.opentelemetry.io/contrib/instrumentation/go.mongodb.org/mongo-driver/v2/mongo/otelmongoto prevent unbounded metric cardinality. (#9352)
... (truncated)
Commits
c8a87a6Release v1.45.0/v2.5.2/v0.70.0/v0.37.2/v0.25.0/v0.20.0/v0.16.2/v0.17.0 (#9413)cde125cfix(deps): update aws-sdk-go-v2 monorepo (#9384)88572a7chore(deps): update googleapis to 6ac0973 (#9409)e4f511achore(deps): update github/codeql-action action to v4.37.5 (#9410)265eb0bfix(deps): update go.opentelemetry.io/otel digest to 48db2c6 (#9317)941ba46chore(deps): update github.com/charmbracelet/ultraviolet digest to 8b69304 (#...ededd3bchore(deps): update module github.com/lucasb-eyer/go-colorful to v1.4.1 (#9406)7c6e819fix(deps): update module github.com/atombender/go-jsonschema to v0.24.1 (#9405)ec1e544chore(deps): update github.com/lufia/plan9stats digest to 341c2f0 (#9403)5d7e16achore(deps): update github.com/golangci/rowserrcheck digest to d2031e3 (#9402)- Additional commits viewable in compare view
Updates go.opentelemetry.io/contrib/propagators/autoprop from 0.69.0
to 0.70.0
Release notes
Sourced from go.opentelemetry.io/contrib/propagators/autoprop's releases.
Release v1.45.0/v2.5.2/v0.70.0/v0.37.2/v0.25.0/v0.20.0/v0.16.2/v0.17.0
Overview
Added
- Add
go.opentelemetry.io/contrib/detectors/ibmcloud/vpc, a new resource detector for IBM Cloud VPC virtual server instances, ported fromgithub.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/ibmcloud/vpc. Detectscloud.provider,cloud.platform,cloud.region,cloud.availability_zone,cloud.account.id,cloud.resource_id,host.id,host.image.id,host.image.name,host.name, andhost.type. (#9011)- Add
go.opentelemetry.io/contrib/detectors/k8sapi, a new resource detector that queries the Kubernetes API. Detectsk8s.node.nameandk8s.node.uidwhenK8S_NODE_NAMEis set via the downward API, andk8s.cluster.uidderived from the kube-system namespace UID (works on any Kubernetes distribution). (#9108)- Add new
elasticbeanstalkresource detector for AWS Elastic Beanstalk, ported fromprocessor/resourcedetectionprocessor/internal/aws/elasticbeanstalkin opentelemetry-collector-contrib. (#8993)- The resource created by
go.opentelemetry.io/contrib/otelconfnow includes default SDK attributes. (#8990)- Add support for the
aws.ecsresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#8915)- Add support for the
aws.eksresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9138)- Add support for the
azure.vmresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9074)- Add support for the
gcpresource detector ingo.opentelemetry.io/contrib/otelconf/x. (#9137)- Add
go.opentelemetry.io/contrib/detectors/azure/azureappservice, a new resource detector for Azure App Service. Detectscloud.*,service.name,azure.resource_group.name,azure.app_service.instance.id, anddeployment.environment.namefrom theWEBSITE_*andREGION_NAMEenvironment variables. (#9289)- Add
azurecontainerappsresource detector for Azure Container Apps. (#8939)- Add
go.opentelemetry.io/contrib/detectors/azure/azurefunctions, a new resource detector for Azure Functions. Detectscloud.*,service.name,azure.resource_group.name,faas.instance, anddeployment.environment.namefrom theFUNCTIONS_*,WEBSITE_*,CONTAINER_NAME, andREGION_NAMEenvironment variables. (#9290)- Add
NewResourceDetectoralong with theWithAttributeFilterandWithTagKeyFilteroptions ingo.opentelemetry.io/contrib/detectors/azure/azurevm.WithAttributeFilterrestricts the returned resource to the attributes the filter accepts.WithTagKeyFilteropts in toazure.tag.<name>attributes for the VM tags whose keys satisfy the provided predicate; no VM tags are emitted without it. (#9162)- Add
go.opentelemetry.io/contrib/detectors/vultr— a new resource detector for Vultr Cloud Compute instances, ported fromprocessor/resourcedetectionprocessor/internal/vultrinopentelemetry-collector-contrib. Detectscloud.provider,cloud.platform,cloud.region,host.id, andhost.name. (