Path: blob/main/components/common-go/baseserver/metrics.go
2498 views
// Copyright (c) 2022 Gitpod GmbH. All rights reserved.1// Licensed under the GNU Affero General Public License (AGPL).2// See License.AGPL.txt in the project root for license information.34package baseserver56import (7"fmt"8"github.com/prometheus/client_golang/prometheus"9)1011var (12serverVersionGauge = prometheus.NewGaugeVec(prometheus.GaugeOpts{13Namespace: "gitpod",14Subsystem: "server",15Name: "version",16Help: "Gauge of the current version of a gitpod server",17}, []string{"version"})18)1920func registerMetrics(reg *prometheus.Registry) error {21metrics := []prometheus.Collector{22serverVersionGauge,23}24for _, metric := range metrics {25err := reg.Register(metric)26if err != nil {27return fmt.Errorf("failed to register metric: %w", err)28}29}3031return nil32}3334func reportServerVersion(version string) {35serverVersionGauge.WithLabelValues(version).Set(1)36}373839