fix: skip headers capitalization

This commit is contained in:
David Hontecillas
2025-11-06 18:03:58 +01:00
parent 5776ab6746
commit 6b83996459
3 changed files with 9 additions and 3 deletions
+3 -1
View File
@@ -2,6 +2,7 @@ package client
import ( import (
"net/http" "net/http"
"net/textproto"
"strings" "strings"
"go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/attribute"
@@ -46,7 +47,8 @@ func newTransportTraces(tracesOpts *TransportTracesOptions, tracer trace.Tracer,
if len(tracesOpts.SkipHeaders) > 0 { if len(tracesOpts.SkipHeaders) > 0 {
sh = make(map[string]bool, len(tracesOpts.SkipHeaders)) sh = make(map[string]bool, len(tracesOpts.SkipHeaders))
for _, v := range tracesOpts.SkipHeaders { for _, v := range tracesOpts.SkipHeaders {
sh[v] = true canonical := textproto.CanonicalMIMEHeaderKey(v)
sh[canonical] = true
} }
} }
return &transportTraces{ return &transportTraces{
+3 -1
View File
@@ -4,6 +4,7 @@ import (
"context" "context"
"net" "net"
"net/http" "net/http"
"net/textproto"
"go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/propagation" "go.opentelemetry.io/otel/propagation"
@@ -93,7 +94,8 @@ func NewTrackingHandlerWithTrustedProxies(next http.Handler, trustedProxies []st
if len(gCfg.SkipHeaders) > 0 { if len(gCfg.SkipHeaders) > 0 {
sh = make(map[string]bool, len(gCfg.SkipHeaders)) sh = make(map[string]bool, len(gCfg.SkipHeaders))
for _, v := range gCfg.SkipHeaders { for _, v := range gCfg.SkipHeaders {
sh[v] = true canonical := textproto.CanonicalMIMEHeaderKey(v)
sh[canonical] = true
} }
} }
+3 -1
View File
@@ -3,6 +3,7 @@ package lura
import ( import (
"context" "context"
"errors" "errors"
"net/textproto"
"strings" "strings"
"go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/attribute"
@@ -36,7 +37,8 @@ func newMiddlewareTracer(s state.OTEL, name string, stageName string, reportHead
if len(skipHeaders) > 0 { if len(skipHeaders) > 0 {
sh = make(map[string]bool, len(skipHeaders)) sh = make(map[string]bool, len(skipHeaders))
for _, k := range skipHeaders { for _, k := range skipHeaders {
sh[k] = true canonical := textproto.CanonicalMIMEHeaderKey(k)
sh[canonical] = true
} }
} }
return &middlewareTracer{ return &middlewareTracer{