feat(inputs.http_response): Add User-Agent header (#12324)
This commit is contained in:
parent
4a378c6ff9
commit
1a6c363cf1
|
|
@ -18,6 +18,7 @@ import (
|
||||||
|
|
||||||
"github.com/influxdata/telegraf"
|
"github.com/influxdata/telegraf"
|
||||||
"github.com/influxdata/telegraf/config"
|
"github.com/influxdata/telegraf/config"
|
||||||
|
"github.com/influxdata/telegraf/internal"
|
||||||
"github.com/influxdata/telegraf/plugins/common/tls"
|
"github.com/influxdata/telegraf/plugins/common/tls"
|
||||||
"github.com/influxdata/telegraf/plugins/inputs"
|
"github.com/influxdata/telegraf/plugins/inputs"
|
||||||
)
|
)
|
||||||
|
|
@ -198,6 +199,10 @@ func (h *HTTPResponse) httpGather(u string) (map[string]interface{}, map[string]
|
||||||
return nil, nil, err
|
return nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if _, uaPresent := h.Headers["User-Agent"]; !uaPresent {
|
||||||
|
request.Header.Set("User-Agent", internal.ProductToken())
|
||||||
|
}
|
||||||
|
|
||||||
if h.BearerToken != "" {
|
if h.BearerToken != "" {
|
||||||
token, err := os.ReadFile(h.BearerToken)
|
token, err := os.ReadFile(h.BearerToken)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ import (
|
||||||
|
|
||||||
"github.com/influxdata/telegraf"
|
"github.com/influxdata/telegraf"
|
||||||
"github.com/influxdata/telegraf/config"
|
"github.com/influxdata/telegraf/config"
|
||||||
|
"github.com/influxdata/telegraf/internal"
|
||||||
"github.com/influxdata/telegraf/plugins/common/tls"
|
"github.com/influxdata/telegraf/plugins/common/tls"
|
||||||
"github.com/influxdata/telegraf/testutil"
|
"github.com/influxdata/telegraf/testutil"
|
||||||
)
|
)
|
||||||
|
|
@ -169,8 +170,10 @@ func checkOutput(
|
||||||
func TestHeaders(t *testing.T) {
|
func TestHeaders(t *testing.T) {
|
||||||
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||||
cHeader := r.Header.Get("Content-Type")
|
cHeader := r.Header.Get("Content-Type")
|
||||||
|
uaHeader := r.Header.Get("User-Agent")
|
||||||
require.Equal(t, "Hello", r.Host)
|
require.Equal(t, "Hello", r.Host)
|
||||||
require.Equal(t, "application/json", cHeader)
|
require.Equal(t, "application/json", cHeader)
|
||||||
|
require.Equal(t, internal.ProductToken(), uaHeader)
|
||||||
w.WriteHeader(http.StatusOK)
|
w.WriteHeader(http.StatusOK)
|
||||||
}))
|
}))
|
||||||
defer ts.Close()
|
defer ts.Close()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue