The package go-flexible/flexmetrics provides a default set of configuration for hosting prometheus and pprof metrics.
The metric server can be configured through the environment to match setup in the infrastructure.
PROMETHEUS_ADDRdefault::9090PROMETHEUS_PATHdefault:/metrics
// Rely on the package defaults
srv := flexmetrics.New()
srv.Run(ctx)
// Or bring your own
httpServer := &http.Server{
Addr: ":8081",
}
srv := flexmetrics.New(
flexmetrics.WithServer(httpServer),
flexmetrics.WithPath("/__/metrics"),
)
srv.Run(ctx)pprof metrics will be exposed on:
/debug/pprof/
/debug/pprof/cmdline
/debug/pprof/profile
/debug/pprof/symbol
/debug/pprof/trace