【发布时间】:2021-04-13 20:39:09
【问题描述】:
我通过向 prometheus 端点发送 HTTP Get() 来获取 prometheus 指标。如果 prometheus 端点是 http,这可以工作,但是当它是 https 时会抛出错误。
现在我想要一个用户设置为ignore_invalid_tls,可以设置为真或假。
要实现这一点,我需要忽略https 端点引起的错误。
我试过这种方法:
client := http.Client{
Timeout: time.Duration(configuration.Endpoint.Timeout) * time.Second,
Transport: &http.Transport{
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
},
}
但这只会忽略错误的证书。
prometheus 端点为 https 时我得到的错误是:
http: 服务器给 HTTPS 客户端 HTTP 响应
【问题讨论】:
-
错误恕我直言,意味着您正在访问 https:// 端点(因此您的 golang 客户端需要 HTTPS 流量)但服务器在 HTTPS 端口上提供 HTTP...
标签: go prometheus amazon-cloudwatch tls1.2