prometheus exporter简介
一、服务分类
- 在线服务:请求的客户端和发起者需要立即响应(高并发、低延迟:并发数、接口响应时间、错误数、延迟时间),面对突发流量能进行资源的自动伸缩
- 离线服务:请求发送到服务端但不要求立即获取结果(监控服务的每个执行阶段、成功/失败的次数)
- 批处理:批量任务的执行(一般定时执行),针对每个任务的执行耗时、待处理任务、阻塞任务、处理成功/失败的任务数
二、数据规范
- prometheus制定了一套独特的监控数据规范,符合这一规范的监控数据都可以被统一采集、分析和展现
- prometheus为监控对象提供一个标准的HTTP GET接口,调用接口每次都将返回所有的监控数据
- 监控数据以文本形式组织,每个指标都占用一行,除了文本的最后一个空行,其他空行都将被忽略
- #HELP:指标的注释
#TYPE:定义一个监控指标
三、exporter简介
- exporter诞生的原因:大多数监控无法直接提供监控接口(本身不支持HTTP接口、安全性、稳定性、代码耦合等)
- exporter是一个采集监控数据并通过prometheus监控规范对外提供数据的组件
- 官方实现的exporter:blackbox_exporter、consul_exporter、graphite_exporter、haproxy_exporter、memcached_exporter、mysqld_exporter、node_exporter、statsd_exporter
- 第三方实现的exporter:Redis exporter、RabbitMQ exporter等
- prometheus会周期性地调用exporter提供的metrics数据接口来获取数据
- exporter通过被监控对象提供的监控相关的接口获取监控数据(HTTP/HTTPS、TCP、本地文件(node)、标准协议方式)
- 官方主要依赖库:go、java、scala、python、ruby等
四、功能特性总结
- prometheus只会采集指定格式的监控信息
- exporter按照prometheus规定的格式采集各种软件的监控信息(mysql、node、consul、rabbitMQ等)
- 部分exporter在采集监控信息时需要获取一定的权限用于采集指定信息(如:mysql)
- 类似于多功能充电线,什么品牌的手机选择对应型号的线即可;不同的软件选择对应exporter即可
prometheus exporter简介的更多相关文章
- Prometheus学习笔记(1)Prometheus架构简介
Prometheus简介和架构 Prometheus 是由 SoundCloud 开源监控告警解决方案.架构图如下: 如上图,Prometheus主要由以下部分组成: Prometheus Serve ...
- 编写一个简单的基于jmespath 的prometheus exporter
目的很简单,因为系统好多监控指标是通过json 暴露的,并不是标准的prometheus metrics 格式,处理方法 实际上很简单,我们可以基于jsonpath 解析json数据,转换为prome ...
- Go语言开发Prometheus Exporter示例
一.Prometheus中的基本概念 Prometheus将所有数据存储为时间序列,这里先来了解一下prometheus中的一些基本概念 指标名和标签每个时间序列都由指标名和一组键值对(也称为标签)唯 ...
- Prometheus exporter的Node exporter是可以独立安装,用来测试的
现在慢慢在把prometheus operator的一些概念组织完整. https://github.com/coreos/prometheus-operator/tree/master/contri ...
- prometheus学习系列十一: Prometheus exporter详解
exporter详解 前面的系列中,我们在主机上面安装了node_exporter程序,该程序对外暴露一个用于获取当前监控样本数据的http的访问地址, 这个的一个程序成为exporter,Expor ...
- prometheus+exporter小测试:
1.golang中使用expoter import ( "github.com/prometheus/client_golang/prometheus/promhttp" ) fu ...
- 实现一个Prometheus exporter
Prometheus 官方和社区提供了非常多的exporter,涵盖数据库.中间件.OS.存储.硬件设备等,具体可查看exporters.exporterhub.io,通过这些 exporter 基本 ...
- Prometheus监控⼊⻔简介
文档目录: • prometheus是什么?• prometheus能为我们带来些什么• prometheus对于运维的要求• prometheus多图效果展示 1) Prometheus是什么pro ...
- Prometheus监控学习笔记之Prometheus监控简介
0x00 Prometheus容器监控解决方案 Prometheus(普罗米修斯)是一个开源系统监控和警报工具,最初是在SoundCloud建立的.它是一个独立的开放源码项目,并且独立于任何公司.不同 ...
随机推荐
- express捕获全局异常的三种方法
场景 express的路由里抛出异常后,全局中间件没办法捕获,需要在所有的路由函数里写try catch,这坑爹的逻辑让人每次都要多写n行代码 官方错误捕获中件间代码如下 app.use(functi ...
- Java操作zip-压缩和解压文件
一.说明 rar格式的压缩包收费,java支持zip格式的压缩和解压 二.工具类 import java.io.*; import java.util.Enumeration; import java ...
- Laravel向表里插入字段
执行: php artisan make:migration add_字段_to_表名_table --table=表名 此时在database/migrations文件夹下会生成一个相应文件,更改如 ...
- vue中使用axios进行ajax请求数据(跨域配置)
npm安装axios npm install axios --save 引入axios import axios from 'axios' 使用axios mounted () { this.getH ...
- 玄学 npm报错记录
刚开始是版本原因npm报错,ok卸载重装就可以了, 后面报错 npm ERR! code ENOGIT npm ERR! No git binary found in $PATH npm ERR! n ...
- CSS3动画实践——简易牛顿摆
最近在练习CSS3的关键帧动画(keyframes),于是做了一个简单的牛顿摆(听名字可能陌生,但你一定见过它): 先上代码(老版本IE可能存在兼容性问题): <!DOCTYPE html> ...
- fgets实现
char *fgets(char *s, int n, FILE *stream) { register int c; register char *cs; cs = s; while(--n > ...
- vuejs的导航栏固定
https://blog.csdn.net/wang1006008051/article/details/78003974 博主文章,超级详细,上面传送们 不过博主的导航栏跳动比较明显,我自己做了修复 ...
- 经典的卷积神经网络及其Pytorch代码实现
1.LeNet LeNet是指LeNet-5,它是第一个成功应用于数字识别的卷积神经网络.在MNIST数据集上,可以达到99.2%的准确率.LeNet-5模型总共有7层,包括两个卷积层,两个池化层,两 ...
- VS调试
1.调试输出变量值 F9先设置断点,开始调试后,依次选择调试——>窗口——>局部变量和监视——>监视1. 点击“全部中断”——>之后局部变量会显示相关变量值,监视1可以查看变量 ...