safing-portbase/metrics/metrics_runtime.go
2021-12-21 17:31:05 +01:00

34 lines
633 B
Go

package metrics
import (
"io"
vm "github.com/VictoriaMetrics/metrics"
"github.com/safing/portbase/api"
"github.com/safing/portbase/config"
)
func registerRuntimeMetric() error {
runtimeBase, err := newMetricBase("_runtime", nil, Options{
Name: "Golang Runtime",
Permission: api.PermitAdmin,
ExpertiseLevel: config.ExpertiseLevelDeveloper,
})
if err != nil {
return err
}
return register(&runtimeMetrics{
metricBase: runtimeBase,
})
}
type runtimeMetrics struct {
*metricBase
}
func (r *runtimeMetrics) WritePrometheus(w io.Writer) {
// TODO: Add global labels.
vm.WriteProcessMetrics(w)
}