瀏覽代碼

Merge pull request #11093 from svenklemm/postgres-connection

postgres: use net/url to generate postgres connection url
Daniel Lee 7 年之前
父節點
當前提交
9c8733ac85
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      pkg/tsdb/postgres/postgres.go

+ 2 - 1
pkg/tsdb/postgres/postgres.go

@@ -54,7 +54,8 @@ func generateConnectionString(datasource *models.DataSource) string {
 	}
 
 	sslmode := datasource.JsonData.Get("sslmode").MustString("verify-full")
-	return fmt.Sprintf("postgres://%s:%s@%s/%s?sslmode=%s", url.PathEscape(datasource.User), url.PathEscape(password), url.PathEscape(datasource.Url), url.PathEscape(datasource.Database), url.QueryEscape(sslmode))
+	u := &url.URL{Scheme: "postgres", User: url.UserPassword(datasource.User, password), Host: datasource.Url, Path: datasource.Database, RawQuery: "sslmode=" + sslmode}
+	return u.String()
 }
 
 func (e *PostgresQueryEndpoint) Query(ctx context.Context, dsInfo *models.DataSource, tsdbQuery *tsdb.TsdbQuery) (*tsdb.Response, error) {