Go:普罗米修斯中间件开发
目录
Prometheus介绍
Grafana介绍和使用
Prometheus中间件开发
测试Prometheus中间件
Prometheus介绍
分布式监控系统
完全被开源,使用Go进行开发
被广泛用来监控整个云基础架构设施
Prometheus架构
Prometheus数据模型
度量模型
计数器Counter采样
计数器可能是我们可以使用的最简单的度量标准形式,就像它字面的意思一样,j计数器是随着时间的增长的计算元素
计数器的值只能增加或重置为0.计数器特别适合j计算某个时段上某个事件的发生次数,即指标随时间演变的速率。
比如,要计算服务器上的HTTP错误书数或网站上的访问次数,这时候就用计数器。
Gauges采样
Gauges用于处理可能随时间减少的值。Gauge类型的值可以上升和下降,可以是正值或者负值。
用来记录瞬时的值,比如内存变化、温度变化。连接池的连接数。
柱状图Histogram采样
对每个采样点进行统计(并不是一段时间的统计),打到各个桶(bucket)中
对每个采样点值累计和(sum)
对采样点的次数累计和(count)
Summary采样
在客户端对于一段时间内(默认是10分钟)的每个采样进行统计,并形成分位图
Prometheus安装
https://prometheus.io/download/ 下载对应安装
解压后,直接执行 ./prometheus.exe就可以运行
Grafana介绍
Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知。
代码完全开源,并且是采用golang开发的
1.展示方式:快速灵活的客户端图表,面板插件有许多不同方式的可视化指标和日志,官方库中具有丰富的仪表盘插 件,比如热图、折线图、图表等多种展示方式。
2.数据源:Graphite,InfluxDB,Prometheus,Elasticsearch,CLoudWatch和KairosDB等
3.通知提醒:以可视化方式定义最重要指标的警报规则,Grafana将不断i算并发出通知,在数据达到阈值时通过Slack、 PageDuty等获得通知。
4.混合展示:在同意图表中混合使用不同的数据源,可以基于每个查询指定数据源,甚至自定义数据源。
Grafana安装
下载地址:https://grafana.com/grafana/download?platform=windows
Grafana运行
使用 ./grafana-server.exe进行运行
Grafana+Prometues整合
Prometues中配置要监控的对象
Grafana配置需要展示的图表
Prometues基本使用
package main
import ("flag""log""net/http""github/prometheus/client_golang/prometheus/promhttp"
)var addr = flag.String("listen-address",":8080","The address to listen on for HTTP request")func main(){flag.Parse()http.Handle("/metrics",promhttp.Handler())log.Fatal(http.ListenAndServer(*addr,nil))
}
Counter计数器
Prometheus Gauge使用
Prometheus Histogram使用
Prometheus 中间件开发
当前服务的元信息封装
当前的服务名
当前的方法名
当前的环境,比如生成环境、测试环境
当前服务的集群
当前服务的机房
当前请求的trace_id
当前服务器的ip
客户端请求的ip
如何存储和传递
通过context进行传递
何时进行初始化
路由的时候没在方法入口处进行初始化
监控请求数量
监控请求错误数
监控请求耗时
和koala框架集成
路由生成器模块改造,初始化服务元信息
Main生成器模块化改造,集成prometheus
Prometheus 中间件测试
配置prometheus抓取 hello service
配置grafana指标
Go:普罗米修斯中间件开发相关推荐
- 状态机思路在嵌入式开发中的应用说明及注意事项(普罗米修斯中不少功能节点用了状态机的方法来写)
我感觉普罗米修斯很多功能模块里面都用到了状态机的思路 比如圆环穿越的,比如最新的二维码降落的代码. 摘自:https://mp.weixin.qq.com/s/qRmBDH-VIHM26AaNFoD9 ...
- 普罗米修斯Prometheus+Grafana,监控搭建与界面基础配置
一.Prometheus 简介 gitlab官方地址:https://github.com/prometheus/prometheus Prometheus(普罗米修斯)是一套开源的监控&报警 ...
- Prometheus监控系列--“普罗米修斯“ 入门 | 初识 | 简述 | 超详细
Prometheus监控软件 常见的监控软件 1.Cacti 2.Nagios 3.zabbix 4.prometheus 5.open-falcaon 运维监控平台设计思路 监控体系 系统层监控 中 ...
- Promethus(普罗米修斯)
Prometheus(普罗米修斯 一.监控 一.常用监控介绍 1. cacti 2.Nagios 3.Zabbix 4.Prometheus 二.监控系统背景 1.监控系统背景 1.1监控系统&quo ...
- 普罗米修斯 监控_接近完美的监控系统—普罗米修斯
普罗米修斯(Prometheus)是一个SoundCloud公司开源的监控系统.当年,由于SoundCloud公司生产了太多的服务,传统的监控已经无法满足监控需求,于是他们在2012年决定着手开发新的 ...
- 当ABAP遇见普罗米修斯
Jerry每次在工作场合中同Prometheus(普罗米修斯)打交道时,都会"出戏",因为这个单词给我的第一印象,并不是用go语言实现的微服务监控利器,而是名导雷德利·斯科特(Ri ...
- 普罗米修斯监控系统_基于Prometheus和Grafana的监控平台 - 环境搭建
导读 微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics. Logging - 用于记录离散的事件.例如,应用程序的调试信息或错误信息.它是我们诊断问题的依据.比如 ...
- metrics类型 普罗米修斯_AspNet Core 下利用普罗米修斯+Grafana构建Metrics和服务器性能的监控...
原标题:AspNet Core 下利用普罗米修斯+Grafana构建Metrics和服务器性能的监控 概述 Prometheus是一套开源的监控&报警&时间序列数据库的组合,起始是由S ...
- 普罗米修斯 软件_监控神器-普罗米修斯Prometheus的安装
搬砖党的福音:普罗米修斯-监控神器 功能: 在业务层用作埋点系统 Prometheus支持多种语言(Go,java,python,ruby官方提供客户端,其他语言有第三方开源客户端).我们可以通过客户 ...
最新文章
- RPA有哪些优点和缺点?
- 在Sublime Text3中运行PHP代码
- 修改系统默认区域语言日期格式
- 去非数字字符串的前导零
- Python技术分享:ndarray对象的常用属性
- java——什么是浅表副本
- java中的内部类总结
- P3317-[SDOI2014]重建【矩阵树定理,数学期望】
- [Leedcode][JAVA][第200题][岛屿数量][DFS][BFS][并查集]
- EWSN 2019 (待续)
- 中国移动云智融合峰会 | 1+1>2, 引领创新发展
- Could not find a version that satisfies the requirement Twisted=13.1.0 (from Scrapy)
- 集成运算放大电路实验报告_模电总结:第三章、集成运算放大电路
- 狮子鱼独立版_轮转八方飞智八爪鱼2游戏手柄 | 大家测557
- php读取url连接的图片,输出到浏览器
- 华为、小米、OPPO三大厂商字体对比 这款更加舒适易读
- Tomcat官网下载旧版本
- css vue 内联_Vue绑定内联样式问题
- 【2020年高被引学者】 方飞 卡耐基梅隆大学
- 支持持久化的基础设施代码所需的企业模式
热门文章
- Iframe嵌套拒绝接入
- LLCC68 Sub-1GHz LoRa射频收发器
- [前端面试] 微信小程序相关面试题
- [转自网络]《十年只为一个摧残的梦》
- 音频服务器未响应怎么修复,win10音频服务未响应怎么办 win10音频服务开启及关闭设置教程...
- python求时间序列的极值点
- 匿名地面站V6.5传输协议
- Docker(最详细的Docker入门指南,一通百通)
- Oracle 10g Data Pump Expdp/Impdp 详解
- khadas A311D Andriod 64位移植踩坑