Prometheus学习笔记

Prometheus

Prometheus 是一套开源的系统监控报警框架,基于中央化的规则计算、统一分析和告警的新模型,其本身就是一个时序数据库,将采集到的监控数据按照时间序列的方式存储在本地磁盘当中,负责数据的收集,存储、管理并且对外提供数据查询支持

特点

1.易于管理

  • 不存在第三方依赖(数据库,缓存等), 唯一需要本地磁盘,因此不会有级联故障的风险
  • Prometheus基于Pull模型,可以在任意环境(本地电脑,开发环境,测试环境)搭建,另外可以通过服务发现来动态管理监控目标

2.监控服务内部运行状态

  • Prometheus有丰富的Client库,用户可以轻松获取应用服务内部的真正运行状态

3.强大的数据模型

所有采集的监控数据均以指标(metric)的形式保存在内置的时间序列数据库当中(TSDB)。每一条时间序列由指标名称(Metrics Name)以及一组标签(Labels)唯一标识。每条时间序列按照时间的先后顺序存储一系列的样本值,所有的样本除了基本的指标名称以外,还包含一组用于描述该样本特征的标签,主要由指标、时间戳和样本值三部分组成:

  • 指标(metric):metric name和描述当前样本特征的label sets,prometheus的指标主要有如下几种类型
    • Counter(计数器)Counter类型的指标其工作方式和计数器一样,只增不减(除非系统发生重置)常见的监控指标,如http_requests_total,node_cpu都是Counter类型的监控指标。 一般在定义Counter类型指标的名称时推荐使用_total作为后缀
    • Gauge(仪表盘)Gauge类型的指标侧重于反应系统的当前状态。因此这类指标的样本数据可增可减。常见指标如:node_memory_MemFree(主机当前空闲的内容大小)、node_memory_MemAvailable(可用内存大小)都是Gauge类型的监控指标
    • Histogram(直方图) Histogram和Summary主用用于统计和分析样本的分布情况
    • Summary(摘要)Histogram和Summary主用用于统计和分析样本的分布情况
  • 时间戳(timestamp):一个精确到毫秒的时间戳
  • 样本值(value): 一个float 64的浮点型数据表示当前样本的值

示例如下:

  <--------------- metric ---------------------><-timestamp -><-value->
  http_request_total{status="200", method="GET"}@1434417560938 => 94355
  http_request_total{status="200", method="GET"}@1434417561287 => 94334
  
  http_request_total{status="404", method=
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值