Prometheus的应用指标生成,counter、gauge和label的使用

用法见下

https://github.com/prometheus/client_java#instrumenting

counter只能简单逐个递增,gauge可自由变化

labelnames为label的name,比如"category"、"fruit_type"

对应使用counter和gauge的时候,labels为具体label,比如"clothes"、"apple"

static final Counter requests = Counter.build()
     .name("my_counter").help("Total counts.")
     .labelNames("category", "fruit_type" ).register();
 
requests.labels("food", "apple").inc();




gauge可以用

Gauge.Timer timer = opentsdbWriteTime.labels("some_label").startTimer();

timer.setDuration;
度量时间长度,单位秒
Prometheus Gauge是一个用于度量跟踪的数据点类型,在监控系统中非常有用。相比于计数器(Counter),Gauge更适合表示某个时间点的状态值,并且能够随时间动态改变。 ### Prometheus Gauge的基本概念 - **状态更新**: Gauge可以增加、减少或者设置为特定数值,这使得它适合追踪系统的实时状态变化,如内存使用量、网络连接数等。 - **持久存储**: Gauge的值不会随着进程重启而丢失,这对于长期监控历史分析非常重要。 ### 使用说明: #### 定义 Gauge 在配置文件中,你可以通过`gauge`关键字定义 Gauge 类型的指标。基本语法如下: ```yaml job_name.gauges['metric_name'] = { 'help': 'Metric description', 'labels': ['label1', 'label2', ...] } ``` 其中: - `job_name`: 指的是监控的目标系统名称。 - `metric_name`: 这是你给该指标命名的字符串,通常描述这个指标的意义。 - `help`: 描述了此指标的目的用途,对于理解指标很有帮助。 - `labels`: 可选字段,用于进一步区分不同的实例或配置。 #### 发送数据到 Gauge 在收集数据时,你可以直接修改目标系统的 Gauge 值。例如: ```go package main import ( "fmt" "github.com/prometheus/client_golang/prometheus" "gopkg.in/mgo.v2/bson" ) func main() { prometheus.Register(gaugeMemoryUsage) session := mgo.Dial("localhost") defer session.Close() gaugeMemoryUsage := prometheus.NewGauge(prometheus.GaugeOpts{ Name: "memory_usage", Help: "Total memory usage in bytes.", }) // 获取系统内存信息并发送到 Gauge memoryStats := session.DB("system").C("mem").Find(bson.M{"key": "mem"}).One(&bson.M{}) if memoryStats != nil { gaugeMemoryUsage.Set(float64(memoryStats["total"].(int))) } else { fmt.Println("Error fetching memory stats.") } } ``` 在这个示例中,我们首先定义了一个名为 `memory_usage` 的 Gauge,然后从数据库获取系统内存使用的总字节数,并将这个值发送到 `gaugeMemoryUsage`。 #### 监控与查询 Prometheus 系统会自动收集注册的所有 Gauge 数据,并将其纳入监控仪表盘。你可以通过 Prometheus 的 Web 界面查询所有已定义的 Gauge 数据,查看它们的历史趋势以及当前值。 ###
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值