prometheus直方图实践

目录

1.简介

2.方案


1.简介

Prometheus提供了Counter、Gauge、Histogram、Summary四类指标(详见Metric types | Prometheus),可以通过"github.com/prometheus/client_golang/prometheus"自定义采集指标、注册、采集数据、发布URL,以上步骤即构成exporter,发布后创建Service、ServiceMonitor即可。

复制代码
 

2.部署介绍

定义指标

定义指标,如下定义为直方图类型,需要注意的是Buckets需按照实际要求调整参数,示例中Buckets: prometheus.LinearBuckets(0, 1, 4), 表示从0开始统计,桶宽为1,统计4个桶,实际包含6个桶,即0~1,1~2,2~3,3~4,>4;

复制代码
var (
    PodCpuHistogram = prometheus.NewHistogram(prometheus.HistogramOpts{
			Name: "PodCpuHistogram",
			Help: "pod_cpu_histogram ",
			ConstLabels: map[string]string{
				"metric":          "PodCpuHistogram",
				"namespace":       pod.GetNamespace(),
				"pod_name":        pod.GetName(),
			},
			Buckets: prometheus.LinearBuckets(0, 1, 5),
		})
)

注册

将定义的指标注册到prometheus

复制代码
prometheus.MustRegister(PodCpuHistogram)

统计指标

拿到实时数据(示例中data即为拿到的pod CPU实时数据)后通过PodCpuHistogram.Observe方法进行统计;

复制代码
PodCpuHistogram.Observe(data)

发布metrics地址

复制代码
http.Handle("/metrics", promhttp.Handler())
log.Fatal(http.ListenAndServe(":8080",nil))

exporter构建示例可参考https://www.cnblogs.com/makelu/p/11082485.html

exporter构建好后可以进行部署,创建对应Service和ServiceMonitor。

ServiceMonitor中可以定义采集周期、metrics地址和端口。

  • 验证ServiceMonitor

登录p8s,验证p8s是否成功进行服务发现。

检查targets页面是否有对应endpoint,在p8s查询窗口输入PodCpuHistogram检查是否有匹配项。

相关推荐
AC赳赳老秦16 小时前
外文文献精读:DeepSeek翻译并解析顶会论文核心技术要点
前端·flutter·zookeeper·自动化·rabbitmq·prometheus·deepseek
牛奶咖啡132 天前
Prometheus+Grafana构建云原生分布式监控系统(十二)_基于DNS的服务发现
云原生·prometheus·dns·搭建自己的dns服务器·使用bind搭建dns服务器·配置正向解析·基于dns的服务发现
A-刘晨阳3 天前
Prometheus + Grafana + Alertmanager 实现邮件监控告警及配置告警信息
运维·云计算·grafana·prometheus·监控·邮件
饺子大魔王的男人3 天前
告别服务器失联!Prometheus+Alertmanager+cpolar 让监控告警不局限于内网
运维·服务器·prometheus
牛奶咖啡134 天前
Prometheus+Grafana构建云原生分布式监控系统(十一)_基于consul的服务发现
云原生·prometheus·consul的安装部署·consul服务自动发现·consul服务的注册删除·consul服务的更新·实现自动去consul注册服务
Otto_10275 天前
在 OpenStack Rocky 中部署 Prometheus + Grafana
openstack·grafana·prometheus
牛奶咖啡135 天前
Prometheus+Grafana构建云原生分布式监控系统(十)_prometheus的服务发现机制(一)
云原生·prometheus·prometheus服务发现·静态服务发现·动态服务发现·基于文件的服务发现配置实践·prometheus标签重写
玄德公笔记5 天前
Prometheus监控k8s的metric详解(第二版)-01-scrape 指标抓取
kubernetes·k8s·prometheus·监控·metric·scrape·k8s监控
小北方城市网5 天前
Spring Boot Actuator+Prometheus+Grafana 生产级监控体系搭建
java·spring boot·python·rabbitmq·java-rabbitmq·grafana·prometheus
牛奶咖啡136 天前
Prometheus+Grafana构建云原生分布式监控系统(九)_pushgateway的使用
云原生·grafana·prometheus·pushgateway·pushgateway使用场景·推数据到pushgateway·pushgateway的使用