From 875374cee602d52e0e3eb44f6f137fdec90b74f6 Mon Sep 17 00:00:00 2001 From: Dimitrios Karagiannis Date: Thu, 16 Mar 2017 17:25:16 +0000 Subject: [PATCH 1/2] only print the hostname of the database connection string --- postgres_exporter.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/postgres_exporter.go b/postgres_exporter.go index 3ea757625..156e439ac 100644 --- a/postgres_exporter.go +++ b/postgres_exporter.go @@ -8,6 +8,7 @@ import ( "io/ioutil" "math" "net/http" + "net/url" "os" "regexp" "strconv" @@ -996,7 +997,11 @@ func (e *Exporter) scrape(ch chan<- prometheus.Metric) { db, err := getDB(e.dsn) if err != nil { - log.Infof("Error opening connection to database (%s): %s", e.dsn, err) + loggableDatabaseSource := "could not parse DATA_SOURCE_NAME" + if pDsn, pErr := url.Parse(e.dsn); pErr != nil { + loggableDatabaseSource = pDsn.Host + } + log.Infof("Error opening connection to database (%s): %s", loggableDatabaseSource, err) e.error.Set(1) return } From 5441d34c6f5888531a5224455a9b6aab7dd62bef Mon Sep 17 00:00:00 2001 From: Dimitrios Karagiannis Date: Thu, 16 Mar 2017 17:33:57 +0000 Subject: [PATCH 2/2] print full URL but mask password --- postgres_exporter.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/postgres_exporter.go b/postgres_exporter.go index 156e439ac..6dfd262e8 100644 --- a/postgres_exporter.go +++ b/postgres_exporter.go @@ -997,11 +997,12 @@ func (e *Exporter) scrape(ch chan<- prometheus.Metric) { db, err := getDB(e.dsn) if err != nil { - loggableDatabaseSource := "could not parse DATA_SOURCE_NAME" + loggableDsn := "could not parse DATA_SOURCE_NAME" if pDsn, pErr := url.Parse(e.dsn); pErr != nil { - loggableDatabaseSource = pDsn.Host + pDsn.User = url.UserPassword(pDsn.User.Username(), "xxx") + loggableDsn = pDsn.String() } - log.Infof("Error opening connection to database (%s): %s", loggableDatabaseSource, err) + log.Infof("Error opening connection to database (%s): %s", loggableDsn, err) e.error.Set(1) return }