Files
Zane Walker 7e940c83a7
Some checks failed
Build & Test / build-test (push) Has been cancelled
Build & Test / swagger-codegen-cli (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
(Feat): Initial Commit
2026-07-03 19:41:31 +05:30

28 lines
532 B
Go

package users
import (
"context"
"github.com/prometheus/client_golang/prometheus"
)
type MetricsCollector interface {
GetTotalUsersCount(ctx context.Context) float64
}
const (
MetricNameTotalUsers = "total_users"
)
func Metrics(ctx context.Context, collector MetricsCollector) []prometheus.Collector {
return []prometheus.Collector{
prometheus.NewGaugeFunc(
prometheus.GaugeOpts{
Name: MetricNameTotalUsers,
Help: "Total users",
},
func() float64 { return collector.GetTotalUsersCount(ctx) },
),
}
}