我想尝试使用Prometheus的简单示例。
我已经下载了服务器二进制文件
我已经开始简单的代码,但几乎没有修改
var addr = flag.String("listen-address", ":8080", "The address to listen on for HTTP requests.")
func main() {
flag.Parse()
http.Handle("/metrics", promhttp.Handler())
http.Handle("/test/{id}", myHandler(promhttp.Handler()))
log.Fatal(http.ListenAndServe(*addr, nil))
}
func myHandler(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "hello, you've hit %s\n", r.URL.Path)
next.ServeHTTP(w, r)
})
}
问题:
我假设 Prometheus 是监控工具,我想单独监控metrics
端点/test/{id}
。promhttp.Handler()
通过创建多个处理程序并用作中间件,我是否正确地理解了这个想法?
除了请求的数量和延迟之外,还有什么可以在带有数据库的简单 Web 应用程序中进行监控?
SMILET
相关分类