monitoring

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 27, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MetricsHandler

func MetricsHandler(w http.ResponseWriter, r *http.Request)

MetricsHandler returns current metrics as JSON

func MetricsMiddleware

func MetricsMiddleware(next http.Handler) http.Handler

MetricsMiddleware wraps HTTP handlers to collect metrics

func SetupPprofRoutes

func SetupPprofRoutes(mux *http.ServeMux)

SetupPprofRoutes adds pprof endpoints to the router

Types

type Metrics

type Metrics struct {
	RequestCount        int64
	RequestDuration     time.Duration
	ErrorCount          int64
	VendorRequestCounts map[string]int64
	ModelRequestCounts  map[string]int64
	StatusCodeCounts    map[int]int64
	StartTime           time.Time
	// contains filtered or unexported fields
}

Metrics holds application metrics

func GetMetrics

func GetMetrics() *Metrics

GetMetrics returns the global metrics instance

func (*Metrics) GetStats

func (m *Metrics) GetStats() map[string]interface{}

GetStats returns current statistics

func (*Metrics) RecordError

func (m *Metrics) RecordError()

RecordError records an error

func (*Metrics) RecordRequest

func (m *Metrics) RecordRequest(duration time.Duration, statusCode int, vendor, model string)

RecordRequest records a request with its duration and status

func (*Metrics) Reset

func (m *Metrics) Reset()

Reset resets all metrics (useful for testing)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL