Skip to content

Commit

Permalink
check that metrics exist
Browse files Browse the repository at this point in the history
  • Loading branch information
withinboredom committed Aug 11, 2024
1 parent c609e4e commit 4a93deb
Showing 1 changed file with 19 additions and 4 deletions.
23 changes: 19 additions & 4 deletions metrics.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package frankenphp

import (
"github.com/prometheus/client_golang/prometheus"
"go.uber.org/zap"
"path/filepath"
"strings"
"sync"
Expand Down Expand Up @@ -65,14 +64,24 @@ type PrometheusMetrics struct {
}

func (m *PrometheusMetrics) StartWorker(name string) {
name = sanitizeWorkerName(name)
m.busyThreads.Inc()

// tests do not register workers before starting them
if _, ok := m.totalWorkers[name]; !ok {
return
}
name = sanitizeWorkerName(name)
m.totalWorkers[name].Inc()
}

func (m *PrometheusMetrics) StopWorker(name string) {
name = sanitizeWorkerName(name)
m.busyThreads.Dec()

// tests do not register workers before starting them
if _, ok := m.totalWorkers[name]; !ok {
return
}
name = sanitizeWorkerName(name)
m.totalWorkers[name].Dec()
}

Expand Down Expand Up @@ -124,15 +133,21 @@ func (m *PrometheusMetrics) StopRequest() {
}

func (m *PrometheusMetrics) StopWorkerRequest(name string, duration time.Duration) {
logger.Error("StopWorkerRequest", zap.String("name", name), zap.Duration("duration", duration))
name = sanitizeWorkerName(name)
if _, ok := m.workerRequestTime[name]; !ok {
return
}

m.workerRequestCount[name].Inc()
m.busyWorkers[name].Dec()
m.workerRequestTime[name].Add(duration.Seconds())
}

func (m *PrometheusMetrics) StartWorkerRequest(name string) {
name = sanitizeWorkerName(name)
if _, ok := m.busyWorkers[name]; !ok {
return
}
m.busyWorkers[name].Inc()
}

Expand Down

0 comments on commit 4a93deb

Please sign in to comment.