From 6290ee6130ae50d988507efd860ef4e7e9ba36be Mon Sep 17 00:00:00 2001 From: Przemyslaw Kadej Date: Fri, 13 May 2022 00:46:39 +0200 Subject: [PATCH 1/4] PMM-7110 Changed log level for errors in communication with /debug/pprof endpoint. --- commands/summary.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/summary.go b/commands/summary.go index b354ad6f..2437ff73 100644 --- a/commands/summary.go +++ b/commands/summary.go @@ -283,7 +283,7 @@ func addPprofData(ctx context.Context, zipW *zip.Writer, skipServer bool) { logrus.Infof("Getting %s ...", url) data, err := getURL(ctx, url) if err != nil { - logrus.Debugf("%s", err) + logrus.Warnf("%s", err) return } From 4c6baaed657d0080cc01bc79f1b11cab4e89cefc Mon Sep 17 00:00:00 2001 From: Przemyslaw Kadej Date: Tue, 17 May 2022 22:31:44 +0200 Subject: [PATCH 2/4] PMM-7110 Improved error loging for summary with --pprof parameter. --- commands/summary.go | 7 ++++++- helpers/helpers.go | 11 +++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/commands/summary.go b/commands/summary.go index 2437ff73..63db1804 100644 --- a/commands/summary.go +++ b/commands/summary.go @@ -21,6 +21,7 @@ import ( "context" "encoding/json" "fmt" + "github.com/percona/pmm-admin/helpers" "io" "io/ioutil" "net/http" @@ -283,7 +284,11 @@ func addPprofData(ctx context.Context, zipW *zip.Writer, skipServer bool) { logrus.Infof("Getting %s ...", url) data, err := getURL(ctx, url) if err != nil { - logrus.Warnf("%s", err) + if res, _ := helpers.IsOnPmmServer(); res { + logrus.Warnf("%s", err) + } else { + logrus.Debugf("%s", err) + } return } diff --git a/helpers/helpers.go b/helpers/helpers.go index 1c6a764e..a0e28821 100644 --- a/helpers/helpers.go +++ b/helpers/helpers.go @@ -82,3 +82,14 @@ func GetNodeName(node *nodes.GetNodeOKBody) (string, error) { return "", errors.Wrap(errNoNode, "unknown node type") } } + +// IsOnPmmServer returns true if pmm-admin is running on pmm-server +func IsOnPmmServer() (bool, error) { + pmmServer := "pmm-server" + status, err := agentlocal.GetStatus(agentlocal.DoNotRequestNetworkInfo) + if err != nil { + return false, err + } + + return status.NodeID == pmmServer && status.AgentID == pmmServer, nil +} From 354e5c202da4ce5d0ab5d3315113f2c942d7a7c1 Mon Sep 17 00:00:00 2001 From: Przemyslaw Kadej Date: Tue, 17 May 2022 22:46:19 +0200 Subject: [PATCH 3/4] PMM-7110 Linter fixes. --- commands/summary.go | 2 +- helpers/helpers.go | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/commands/summary.go b/commands/summary.go index 63db1804..ab9e4b36 100644 --- a/commands/summary.go +++ b/commands/summary.go @@ -21,7 +21,6 @@ import ( "context" "encoding/json" "fmt" - "github.com/percona/pmm-admin/helpers" "io" "io/ioutil" "net/http" @@ -43,6 +42,7 @@ import ( "gopkg.in/alecthomas/kingpin.v2" "github.com/percona/pmm-admin/agentlocal" + "github.com/percona/pmm-admin/helpers" ) var summaryResultT = ParseTemplate(` diff --git a/helpers/helpers.go b/helpers/helpers.go index a0e28821..f09601b7 100644 --- a/helpers/helpers.go +++ b/helpers/helpers.go @@ -83,13 +83,14 @@ func GetNodeName(node *nodes.GetNodeOKBody) (string, error) { } } -// IsOnPmmServer returns true if pmm-admin is running on pmm-server +// IsOnPmmServer returns true if pmm-admin is running on pmm-server. func IsOnPmmServer() (bool, error) { - pmmServer := "pmm-server" status, err := agentlocal.GetStatus(agentlocal.DoNotRequestNetworkInfo) if err != nil { - return false, err + return false, errors.Wrap(err, "can't get local pmm-agent status") } + pmmServer := "pmm-server" + return status.NodeID == pmmServer && status.AgentID == pmmServer, nil } From d8948331ab019a1ddea5f163b4c0003702dcc184 Mon Sep 17 00:00:00 2001 From: Przemyslaw Kadej Date: Tue, 24 May 2022 22:24:24 +0200 Subject: [PATCH 4/4] PMM-7110 Code review adjustments. --- commands/summary.go | 11 +++++------ go.sum | 4 ---- helpers/helpers.go | 4 +--- 3 files changed, 6 insertions(+), 13 deletions(-) diff --git a/commands/summary.go b/commands/summary.go index ab9e4b36..d0229e58 100644 --- a/commands/summary.go +++ b/commands/summary.go @@ -264,7 +264,10 @@ func addPprofData(ctx context.Context, zipW *zip.Writer, skipServer bool) { sources := map[string]string{ "client/pprof/pmm-agent": fmt.Sprintf("http://%s:%d/debug/pprof", agentlocal.Localhost, GlobalFlags.PMMAgentListenPort), } - if !skipServer { + + isRunOnPmmServer, _ := helpers.IsOnPmmServer() + + if !skipServer && isRunOnPmmServer { sources["server/pprof/pmm-managed"] = fmt.Sprintf("http://%s:7773/debug/pprof", agentlocal.Localhost) sources["server/pprof/qan-api2"] = fmt.Sprintf("http://%s:9933/debug/pprof", agentlocal.Localhost) } @@ -284,11 +287,7 @@ func addPprofData(ctx context.Context, zipW *zip.Writer, skipServer bool) { logrus.Infof("Getting %s ...", url) data, err := getURL(ctx, url) if err != nil { - if res, _ := helpers.IsOnPmmServer(); res { - logrus.Warnf("%s", err) - } else { - logrus.Debugf("%s", err) - } + logrus.Warnf("%s", err) return } diff --git a/go.sum b/go.sum index 951d1cc6..dd423ed3 100644 --- a/go.sum +++ b/go.sum @@ -34,7 +34,6 @@ github.com/go-openapi/loads v0.21.1 h1:Wb3nVZpdEzDTcly8S4HMkey6fjARRzb7iEaySimlD github.com/go-openapi/loads v0.21.1/go.mod h1:/DtAMXXneXFjbQMGEtbamCZb+4x7eGwkvZCvBmwUG+g= github.com/go-openapi/runtime v0.24.0 h1:vTgDijpGLCgJOJTdAp5kG+O+nRsVCbH417YQ3O0iZo0= github.com/go-openapi/runtime v0.24.0/go.mod h1:AKurw9fNre+h3ELZfk6ILsfvPN+bvvlaU/M9q/r9hpk= -github.com/go-openapi/spec v0.20.4 h1:O8hJrt0UMnhHcluhIdUgCLRWyM2x7QkBXRvOs7m+O1M= github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I= github.com/go-openapi/spec v0.20.5 h1:skHa8av4VnAtJU5zyAUXrrdK/NDiVX8lchbG+BfcdrE= github.com/go-openapi/spec v0.20.5/go.mod h1:QbfOSIVt3/sac+a1wzmKbbcLXm5NdZnyBZYtCijp43o= @@ -103,7 +102,6 @@ github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsI github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= -github.com/mitchellh/mapstructure v1.4.3 h1:OVowDSCllw/YjdLkam3/sm7wEtOy59d8ndGgCcyj8cs= github.com/mitchellh/mapstructure v1.4.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= @@ -115,8 +113,6 @@ github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs= github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE= -github.com/percona/pmm v0.0.0-20220505164356-d8b4097358e1 h1:Iil3UzE49DPn4keMZ4apU396bzRJRQZvNGJc8jWRp08= -github.com/percona/pmm v0.0.0-20220505164356-d8b4097358e1/go.mod h1:k7HS59HPX33tmrSZGiNzUTYuLr0+a49F3BEZ48MAbuo= github.com/percona/pmm v0.0.0-20220516171205-6f9c9d3e0c6b h1:i7MbHYxAT7AkX5PWBrC5W+0YA9rr/lgEq5OX3u0rJ2k= github.com/percona/pmm v0.0.0-20220516171205-6f9c9d3e0c6b/go.mod h1:gr+WLd8clEAe2xMFgsGhpw9ziZc2UCWcfy6d3M6Aq00= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= diff --git a/helpers/helpers.go b/helpers/helpers.go index f09601b7..af86bac1 100644 --- a/helpers/helpers.go +++ b/helpers/helpers.go @@ -90,7 +90,5 @@ func IsOnPmmServer() (bool, error) { return false, errors.Wrap(err, "can't get local pmm-agent status") } - pmmServer := "pmm-server" - - return status.NodeID == pmmServer && status.AgentID == pmmServer, nil + return status.NodeID == "pmm-server", nil }