metrics

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2026 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package metrics provides Prometheus metrics via OpenTelemetry.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	BindAddr   string
	Path       string
	ProxyStats ProxyStatsProvider
	WebStats   WebStatsProvider
	MiddleEnd  MiddleEndStatsProvider
}

Config configures the metrics server.

type MiddleEndStatsProvider added in v0.6.0

type MiddleEndStatsProvider interface {
	Snapshot() middleend.ServiceSnapshot
}

MiddleEndStatsProvider supplies redacted ME lifecycle, pool, and queue state.

type ProxyStatsProvider added in v0.5.2

type ProxyStatsProvider interface {
	HandshakeFailureStats() []gproxy.HandshakeFailureStat
}

ProxyStatsProvider supplies cumulative MTProxy handshake diagnostics.

type Server

type Server struct {
	// contains filtered or unexported fields
}

Server wraps the metrics HTTP server.

func NewServer

func NewServer(cfg Config, limiter StatsProvider) (*Server, error)

NewServer creates a new metrics server.

func (*Server) Shutdown

func (s *Server) Shutdown(ctx context.Context) error

Shutdown gracefully shuts down the metrics server.

func (*Server) Start

func (s *Server) Start() error

Start starts the metrics HTTP server in a goroutine. Errors during ListenAndServe are silently ignored because metrics are optional. The caller should verify the server is accessible if metrics are required.

type StatsProvider

type StatsProvider interface {
	Stats() []gproxy.UserIPStats
}

StatsProvider provides user statistics for metrics.

type WebStatsProvider added in v0.5.2

type WebStatsProvider interface {
	RuntimeStats() webproxy.RuntimeStats
}

WebStatsProvider supplies WEB lifecycle and capacity diagnostics.

Jump to

Keyboard shortcuts

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