Prometheus入门简介
作用
- 是一个开源的报警系统
数据模型
指标名称:
每一条时间序列由指标名称(Metrics Name)以及一组标签(键值对)唯一标识。其中指标的名称(metric name)可以反映被监控样本的含义。例如,http_requests_total 表示当前系统接收到的 HTTP 请求总量。指标名称只能由 ASCII 字符、数字、下划线以及冒号组成,同时必须匹配正则表达式 :[a-zA-Z_:][a-zA-Z0-9_:]*
标签:
对于相同的指标名称,通过不同标签列表的集合,会形成特定的度量维度实例。
标签的名称只能由 ASCII 字符、数字以及下划线组成并满足正则表达式 [a-zA-Z_][a-zA-Z0-9_]*。其中以 _ 作为前缀的标签,是系统保留的关键字,只能在系统内部使用。标签的值则可以包含任何 Unicode
编码的字符。
例如,指标名称为 api_http_requests_total
,标签为 method="POST"
和 handler="/messages"
的时间序列可以表示为:
api_http_requests_total{method="POST", handler="/messages"}
查询语言在这些指标和标签列表的基础上进行过滤和聚合。改变任何度量指标上的任何标签值(包括添加或删除指标),都会创建新的时间序列。
样本:
在时间序列中的每一个点称为一个样本(sample),样本由以下三部分组成:
- 指标(metric):指标名称和描述当前样本特征的 labelsets;
- 时间戳(timestamp):一个精确到毫秒的时间戳;
- 样本值(value): 一个 folat64 的浮点型数据表示当前样本的值。
3)指标类型
Counter(计数器):代表一种样本数据单调递增的指标。Gauge(仪表盘):代表一种样本数据可以任意变化的指标,即可增可减。Histogram(直方图):在一段时间范围内对数据进行采样(通常是请求持续时间或响应大小等),并将其计入可配置的存储桶(bucket)中,后续可通过指定区间筛选样本,也可以统计样本总数,最后一般将数据展示为直方图。Summary(摘要):与 Histogram 类型类似,用于表示一段时间内的数据采样结果。
安装
参考官网
案例演示
修改配置文件prometheus.yml
#全局配置
global:scrape_interval: 15s #设置每隔15s pull一次数据,默认1min# Attach these labels to any time series or alerts when communicating with# external systems (federation, remote storage, Alertmanager).external_labels:monitor: 'codelab-monitor'# 每一个job的配置
scrape_configs:# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.- job_name: 'prometheus'# Override the global default and scrape targets from this job every 5 seconds.scrape_interval: 5sstatic_configs:- targets: ['localhost:9090']
用指定配置文件启动prometheus
/usr/local/prometheus/prometheus --storage.tsdb.path="/data1/prometheus/data/" --log.level=debug --web.enable-lifecycle --web.enable-admin-api --config.file=/usr/local/prometheus/prometheus.yml
登录webui
http://localhost:9090/graph
输入一个指标进行查询. 如图,对一个指标(metric)进行查询,结果返回一个时间序列. 包含指标名称和一些label .label由键值对构成.如下图指标名称叫做prometheus_target_interval_length_seconds. 然后指标的标签有Instance,interval,job,quantile等四个标签.
也可以只查指定标签的结果
计算返回结果的数目
使用图形界面,横坐标代表时间
总结
- 如何自定义指标?
- 指标的含义是什么?
Prometheus入门简介相关推荐
- Prometheus入门使用(三)
Prometheus入门使用(三) Prometheus告警简介: Prometheus通过PromQL表达式定义触发告警条件,满足触发条件之后在web页面显示告警,关联Alertmanager之后就 ...
- Prometheus入门教程
目录 1.简介 2.主要功能 3.Prometheus的架构及核心组件 4.安装和配置 5.相关概念 5.1.数据模型(时间序列) 5.2.metric类型 Counter(计数器) Gauge(测量 ...
- Markdown入门简介
参考 http://sspai.com/25137 作者: Te_Lee 文章来源: 少数派 Markdown入门简介(使用工具Haroopad) 一.使用的工具----haroopad(http:/ ...
- 分布式文件系统—HDFS—入门简介
原文作者:Zh_Y_G 原文地址:HDFS入门简介 目录 HDFS是什么? 设计目标: 安装配置 HDFS读写流程图解 CheckPoint HDFS是什么? 易于扩展的分布式文件系统 运行在大量普通 ...
- Logstash入门简介
Logstash入门简介 介绍 Logstash是一个开源的服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到最喜欢的存储库中(我们的存储库当然是ElasticSearch) ...
- android 教程概要,Android精通教程-第一节Android入门简介
前言 大家好,我是 Vic,今天给大家带来Android精通教程-第一节Android入门简介的概述,希望你们喜欢 每日一句 If life were predictable it would cea ...
- 车联网大数据框架_大数据基础:ORM框架入门简介
作为大数据开发技术者,需要掌握扎实的Java基础,这是不争的事实,所以对于Java开发当中需要掌握的重要框架技术,也需要有相应程度的掌握,比如说ORM框架.今天的大数据基础分享,我们就来具体讲一讲OR ...
- 掌握 Ajax,第 1 部分: Ajax 入门简介
2019独角兽企业重金招聘Python工程师标准>>> 掌握 Ajax,第 1 部分: Ajax 入门简介 理解 Ajax 及其工作原理,构建网站的一种有效方法 Ajax 由 HTM ...
- 大数据与Hadoop有什么关系?大数据Hadoop入门简介
学习着数据科学与大数据技术专业(简称大数据)的我们,对于"大数据"这个词是再熟悉不过了,而每当我们越去了解大数据就越发现有个词也会一直被提及那就是--Hadoop 那Hadoop与 ...
最新文章
- linux内核centos6.9,CentOS6.9手动编译并更新Kernel内核版本
- opencv改变imshow窗口大小,窗口位置,ROI
- C/C++从入门到高手所有必备PDF书籍收藏
- Quartz- Quartz API以及Jobs 和Triggers介绍
- 黑马程序员_集合学习1
- 查看mysql的版本的四种方法
- android将拍摄的图片存入sd卡中,Android将图片保存至SD卡上
- Redis(十一):Redis特殊类型之Bitmap位图
- supersocket缓冲区_使用Socket从Client传输文件到Server对文件缓冲区大小有限制么?...
- vmware中nat模式中使用静态ip后无法上网的问题
- Yii-- DeleteAll连表删除报错问题的解决方法
- ASP.NET状态管理之五(Cookie)
- centos调整页面大小_新手教程!设置PDF文件的页面大小
- java 数据库编程(一)JDBC连接Sql Server数据库
- 用cocos studio生成plist文件
- Es6中Promise链式调用then方法
- web版收银系统,支持支付宝,微信扫描枪支付,数字输入
- Linux内核调试技术指南
- 微信小程序操作教程(个人用户注册)
- 紫罗兰永恒花园rust简谱_【Sincerely】简谱 自制 高清
热门文章
- 计算机round是什么函数,round函数
- shell while 结束循环_Shell脚本编程2 for循环/while循环
- VMware15.0安装CentOS7
- acm竞赛java很少_ACM比赛中JAVA的应用
- python stdout stderr 一起输出_Python日志记录在stdout和stderr之间拆分
- python中全局变量_玩转Python,使用全局变量
- mysql在缺省状态下_MYSQL面试题
- rocketmq 消息 自定义_rocketmq中的自定义消息头
- facebook加密货币项目_Facebook数字货币:Libra的起源—加密货币(比特币)
- c语言 内存清除函数,C语言内存初始化函数MEMSET的用法