Projeto bot pontos
This commit is contained in:
23
backend/internal/metrics/metrics.go
Normal file
23
backend/internal/metrics/metrics.go
Normal file
@@ -0,0 +1,23 @@
|
||||
// Package metrics define os pontos de medição do sistema (ARQUITETURA.md 12,
|
||||
// decisão 23). Na primeira versão a implementação não faz nada e não existe
|
||||
// endpoint /metrics. Para ativar o Prometheus, basta criar uma implementação
|
||||
// de Recorder com prometheus/client_golang e expor /metrics na rede interna.
|
||||
package metrics
|
||||
|
||||
import "time"
|
||||
|
||||
type Recorder interface {
|
||||
// PointsRequest mede cada consulta de histórico à PontoMais.
|
||||
PointsRequest(duration time.Duration, err error)
|
||||
// ReconciliationCycle mede um ciclo de reconciliação.
|
||||
ReconciliationCycle(duration time.Duration, queried, failed int)
|
||||
// Notification conta lembretes por tipo e status final (sent, failed, expired, cancelled).
|
||||
Notification(notificationType, status string)
|
||||
}
|
||||
|
||||
// Noop é a implementação padrão: não registra nada.
|
||||
type Noop struct{}
|
||||
|
||||
func (Noop) PointsRequest(time.Duration, error) {}
|
||||
func (Noop) ReconciliationCycle(time.Duration, int, int) {}
|
||||
func (Noop) Notification(string, string) {}
|
||||
Reference in New Issue
Block a user