github.com/polarismesh/polaris@v1.17.8/common/metrics/config_metrics.go (about)

     1  /**
     2   * Tencent is pleased to support the open source community by making Polaris available.
     3   *
     4   * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.
     5   *
     6   * Licensed under the BSD 3-Clause License (the "License");
     7   * you may not use this file except in compliance with the License.
     8   * You may obtain a copy of the License at
     9   *
    10   * https://opensource.org/licenses/BSD-3-Clause
    11   *
    12   * Unless required by applicable law or agreed to in writing, software distributed
    13   * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
    14   * CONDITIONS OF ANY KIND, either express or implied. See the License for the
    15   * specific language governing permissions and limitations under the License.
    16   */
    17  
    18  package metrics
    19  
    20  import (
    21  	"github.com/prometheus/client_golang/prometheus"
    22  
    23  	"github.com/polarismesh/polaris/common/utils"
    24  )
    25  
    26  func registerConfigFileMetrics() {
    27  	configGroupTotal = prometheus.NewGaugeVec(prometheus.GaugeOpts{
    28  		Name: "config_group_count",
    29  		Help: "polaris config group total number",
    30  		ConstLabels: map[string]string{
    31  			LabelServerNode: utils.LocalHost,
    32  		},
    33  	}, []string{LabelNamespace})
    34  
    35  	configFileTotal = prometheus.NewGaugeVec(prometheus.GaugeOpts{
    36  		Name: "config_file_count",
    37  		Help: "total number of config_file each config group",
    38  		ConstLabels: map[string]string{
    39  			LabelServerNode: utils.LocalHost,
    40  		},
    41  	}, []string{LabelNamespace, LabelGroup})
    42  
    43  	releaseConfigFileTotal = prometheus.NewGaugeVec(prometheus.GaugeOpts{
    44  		Name: "config_release_file_count",
    45  		Help: "total number of config_release_file each config group",
    46  		ConstLabels: map[string]string{
    47  			LabelServerNode: utils.LocalHost,
    48  		},
    49  	}, []string{LabelNamespace, LabelGroup})
    50  
    51  	_ = GetRegistry().Register(configGroupTotal)
    52  	_ = GetRegistry().Register(configFileTotal)
    53  	_ = GetRegistry().Register(releaseConfigFileTotal)
    54  }
    55  
    56  func GetConfigGroupTotal() *prometheus.GaugeVec {
    57  	return configGroupTotal
    58  }
    59  
    60  func GetConfigFileTotal() *prometheus.GaugeVec {
    61  	return configFileTotal
    62  }
    63  
    64  func GetReleaseConfigFileTotal() *prometheus.GaugeVec {
    65  	return releaseConfigFileTotal
    66  }