MCPcopy
hub / github.com/prometheus/node_exporter / newHandler

Function newHandler

node_exporter.go:57–76  ·  view source on GitHub ↗
(includeExporterMetrics bool, maxRequests int, logger *slog.Logger)

Source from the content-addressed store, hash-verified

55}
56
57func newHandler(includeExporterMetrics bool, maxRequests int, logger *slog.Logger) *handler {
58 h := &handler{
59 exporterMetricsRegistry: prometheus.NewRegistry(),
60 includeExporterMetrics: includeExporterMetrics,
61 maxRequests: maxRequests,
62 logger: logger,
63 }
64 if h.includeExporterMetrics {
65 h.exporterMetricsRegistry.MustRegister(
66 promcollectors.NewProcessCollector(promcollectors.ProcessCollectorOpts{}),
67 promcollectors.NewGoCollector(),
68 )
69 }
70 if innerHandler, err := h.innerHandler(); err != nil {
71 panic(fmt.Sprintf("Couldn't create metrics handler: %s", err))
72 } else {
73 h.unfilteredHandler = innerHandler
74 }
75 return h
76}
77
78// ServeHTTP implements http.Handler.
79func (h *handler) ServeHTTP(w http.ResponseWriter, r *http.Request) {

Callers 1

mainFunction · 0.85

Calls 1

innerHandlerMethod · 0.95

Tested by

no test coverage detected