基本上,我正在开发一个HTTP端点来从prometheus包中获取指标,按照这个链接[https://stackoverflow.com/a/65609042/17150602]中的说明,我创建了一个能够调用promhttp.Handler()的处理程序,如下所示:
g.GET("/metrics", prometheusHandler())
func prometheusHandler() gin.HandlerFunc {
h := promhttp.Handler()
return func(c *gin.Context) {
h.ServeHTTP(c.Writer, c.Request)
}
}
问题是,当我调用localhost:1080/metrics
时,输出如下所示(顺便说一句,我使用的是Postman):
Postman request to get metrics with wrong output
但是,如果我改变了端口,使用http而不是gin包,就像这样:
http.Handle("/metrics", promhttp.Handler())
http.ListenAndServe(promAddr, nil)
输出显示OK,如下所示:
Postman reuest to get metrics with correct output
这是什么,为什么会这样?谢谢
1条答案
按热度按时间kx5bkwkv1#
您可能忘记删除像gzip这样的压缩中间件。