From 0dd9dfd1298ec3e6579ca7c46261c2e7d2c04a51 Mon Sep 17 00:00:00 2001 From: Nurlan Moldomurov Date: Mon, 18 Nov 2024 16:18:38 +0300 Subject: [PATCH 1/2] PMM-13543 Fix socket path failure. --- exporter/server.go | 5 +++-- main.go | 8 +++++--- main_test.go | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/exporter/server.go b/exporter/server.go index 5c535c505..1aea32abe 100644 --- a/exporter/server.go +++ b/exporter/server.go @@ -159,8 +159,9 @@ func OverallTargetsHandler(exporters []*Exporter, logger *logrus.Logger) http.Ha registry.MustRegister(gc) } - hostlabels := prometheus.Labels{ - "instance": e.opts.NodeName, + hostlabels := prometheus.Labels{} + if e.opts.NodeName != "" { + hostlabels["instance"] = e.opts.NodeName } gw := NewGathererWrapper(registry, hostlabels) diff --git a/main.go b/main.go index c8320e437..835e19d06 100644 --- a/main.go +++ b/main.go @@ -140,12 +140,14 @@ func main() { } func buildExporter(opts GlobalFlags, uri string, log *logrus.Logger) *exporter.Exporter { - uri = buildURI(uri, opts.User, opts.Password, log) + uri = buildURI(uri, opts.User, opts.Password) log.Debugf("Connection URI: %s", uri) uriParsed, _ := url.Parse(uri) var nodeName string - if uriParsed.Port() != "" { + if uriParsed == nil { + nodeName = "" + } else if uriParsed.Port() != "" { nodeName = net.JoinHostPort(uriParsed.Hostname(), uriParsed.Port()) } else { nodeName = uriParsed.Host @@ -295,7 +297,7 @@ func buildURIManually(uri string, user string, password string) string { return uri } -func buildURI(uri string, user string, password string, log *logrus.Logger) string { +func buildURI(uri string, user string, password string) string { defaultPrefix := "mongodb://" // default prefix if !strings.HasPrefix(uri, defaultPrefix) && !strings.HasPrefix(uri, "mongodb+srv://") { diff --git a/main_test.go b/main_test.go index c1e0c9fa2..7860eae9a 100644 --- a/main_test.go +++ b/main_test.go @@ -272,7 +272,7 @@ func TestBuildURI(t *testing.T) { } for _, tc := range tests { t.Run(tc.situation, func(t *testing.T) { - newURI := buildURI(tc.origin, tc.newUser, tc.newPassword, logrus.New()) + newURI := buildURI(tc.origin, tc.newUser, tc.newPassword) assert.Equal(t, tc.expect, newURI) }) } From f7298e7908d2f3604cd6a05cfce1a579ecb78075 Mon Sep 17 00:00:00 2001 From: Nurlan Moldomurov Date: Mon, 18 Nov 2024 16:40:12 +0300 Subject: [PATCH 2/2] PMM-13543 Address golangci review. --- main.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/main.go b/main.go index 835e19d06..0eee19e53 100644 --- a/main.go +++ b/main.go @@ -145,11 +145,12 @@ func buildExporter(opts GlobalFlags, uri string, log *logrus.Logger) *exporter.E uriParsed, _ := url.Parse(uri) var nodeName string - if uriParsed == nil { + switch { + case uriParsed == nil: nodeName = "" - } else if uriParsed.Port() != "" { + case uriParsed.Port() != "": nodeName = net.JoinHostPort(uriParsed.Hostname(), uriParsed.Port()) - } else { + default: nodeName = uriParsed.Host }