MCPcopy
hub / github.com/github/github-mcp-server / NewExporters

Function NewExporters

pkg/observability/observability.go:27–38  ·  view source on GitHub ↗

NewExporters creates an Exporters bundle. Pass a configured *slog.Logger (with whatever slog.Handler you need) and a Metrics implementation. Neither may be nil; use slog.New(slog.DiscardHandler) and metrics.NewNoopMetrics() if logging or metrics are unwanted.

(logger *slog.Logger, m metrics.Metrics)

Source from the content-addressed store, hash-verified

25// Neither may be nil; use slog.New(slog.DiscardHandler) and metrics.NewNoopMetrics()
26// if logging or metrics are unwanted.
27func NewExporters(logger *slog.Logger, m metrics.Metrics) (Exporters, error) {
28 if logger == nil {
29 return nil, errors.New("logger must not be nil: use slog.New(slog.DiscardHandler) to discard logs")
30 }
31 if m == nil {
32 return nil, errors.New("metrics must not be nil: use metrics.NewNoopMetrics() to discard metrics")
33 }
34 return &exporters{
35 logger: logger,
36 metrics: m,
37 }, nil
38}
39
40func (e *exporters) Logger() *slog.Logger {
41 return e.logger

Callers 8

RunHTTPServerFunction · 0.92
testExportersFunction · 0.92
stubExportersFunction · 0.92
NewStdioMCPServerFunction · 0.92
TestNewExportersFunction · 0.85

Calls

no outgoing calls

Tested by 6

testExportersFunction · 0.74
stubExportersFunction · 0.74
TestNewExportersFunction · 0.68