http_listener_v2: make http header tags case insensitive (#7986)
This commit is contained in:
parent
b8b6f2e533
commit
b2eb774049
|
|
@ -232,9 +232,9 @@ func (h *HTTPListenerV2) serveWrite(res http.ResponseWriter, req *http.Request)
|
||||||
|
|
||||||
for _, m := range metrics {
|
for _, m := range metrics {
|
||||||
for headerName, measurementName := range h.HTTPHeaderTags {
|
for headerName, measurementName := range h.HTTPHeaderTags {
|
||||||
headerValues, foundHeader := req.Header[headerName]
|
headerValues := req.Header.Get(headerName)
|
||||||
if foundHeader && len(headerValues) > 0 {
|
if len(headerValues) > 0 {
|
||||||
m.AddTag(measurementName, headerValues[0])
|
m.AddTag(measurementName, headerValues)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -383,7 +383,7 @@ func TestWriteHTTPEmpty(t *testing.T) {
|
||||||
|
|
||||||
func TestWriteHTTPTransformHeaderValuesToTagsSingleWrite(t *testing.T) {
|
func TestWriteHTTPTransformHeaderValuesToTagsSingleWrite(t *testing.T) {
|
||||||
listener := newTestHTTPListenerV2()
|
listener := newTestHTTPListenerV2()
|
||||||
listener.HTTPHeaderTags = map[string]string{"Present_http_header_1": "presentMeasurementKey1", "Present_http_header_2": "presentMeasurementKey2", "NOT_PRESENT_HEADER": "notPresentMeasurementKey"}
|
listener.HTTPHeaderTags = map[string]string{"Present_http_header_1": "presentMeasurementKey1", "present_http_header_2": "presentMeasurementKey2", "NOT_PRESENT_HEADER": "notPresentMeasurementKey"}
|
||||||
|
|
||||||
acc := &testutil.Accumulator{}
|
acc := &testutil.Accumulator{}
|
||||||
require.NoError(t, listener.Start(acc))
|
require.NoError(t, listener.Start(acc))
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,12 @@ package testutil
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"log"
|
"log"
|
||||||
|
|
||||||
|
"github.com/influxdata/telegraf"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var _ telegraf.Logger = &Logger{}
|
||||||
|
|
||||||
// Logger defines a logging structure for plugins.
|
// Logger defines a logging structure for plugins.
|
||||||
type Logger struct {
|
type Logger struct {
|
||||||
Name string // Name is the plugin name, will be printed in the `[]`.
|
Name string // Name is the plugin name, will be printed in the `[]`.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue