From ecb05bb56528536c3bfa0c63727a6ce7a309d6e4 Mon Sep 17 00:00:00 2001 From: Vijay Samuel Date: Fri, 8 May 2020 01:31:09 -0700 Subject: [PATCH] Add client address to events from http server module (#18336) (cherry picked from commit da1ba72fe68801973b4b89fb11834dc3342c5c30) --- CHANGELOG.next.asciidoc | 1 + metricbeat/helper/server/http/http.go | 3 ++- metricbeat/module/http/server/server.go | 5 ++++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.next.asciidoc b/CHANGELOG.next.asciidoc index ba42551ae66..ca8bc6b0555 100644 --- a/CHANGELOG.next.asciidoc +++ b/CHANGELOG.next.asciidoc @@ -476,6 +476,7 @@ https://github.com/elastic/beats/compare/v7.0.0-alpha2...master[Check the HEAD d - Collect new `bulk` indexing metrics from Elasticsearch when `xpack.enabled:true` is set. {issue} {pull}17992[17992] - Remove requirement to connect as sysdba in Oracle module {issue}15846[15846] {pull}18182[18182] - Update MSSQL module to fix some SSPI authentication and add brackets to USE statements {pull}17862[17862]] +- Add client address to events from http server module {pull}18336[18336] *Packetbeat* diff --git a/metricbeat/helper/server/http/http.go b/metricbeat/helper/server/http/http.go index d03a9dfb56f..b4bd17477b6 100644 --- a/metricbeat/helper/server/http/http.go +++ b/metricbeat/helper/server/http/http.go @@ -138,7 +138,8 @@ func (h *HttpServer) handleFunc(writer http.ResponseWriter, req *http.Request) { switch req.Method { case "POST": meta := server.Meta{ - "path": req.URL.String(), + "path": req.URL.String(), + "address": req.RemoteAddr, } contentType := req.Header.Get("Content-Type") diff --git a/metricbeat/module/http/server/server.go b/metricbeat/module/http/server/server.go index a22857dfbce..61e2d099145 100644 --- a/metricbeat/module/http/server/server.go +++ b/metricbeat/module/http/server/server.go @@ -80,7 +80,10 @@ func (m *MetricSet) Run(reporter mb.PushReporterV2) { if err != nil { reporter.Error(err) } else { - event := mb.Event{} + meta := msg.GetMeta() + event := mb.Event{ + Host: meta["address"].(string), + } ns, ok := fields[mb.NamespaceKey].(string) if ok { ns = fmt.Sprintf("http.%s", ns)