Go语言网络监控之路_Prometheus

Prometheus是一个开源的完整监控解决方案,形成了基于集中化的规则计算、统一分析和告警。总之Promethus是一个利器,其他知识可以参考首页分享的链接去了解Prometheus更多信息

时间序列

我的理解是某个时间点T去拉取对应的Metrics而产生的值Value(T0,V0),根据不同拉取间隔,从而形成一连串的时间点与数据的结合,从而形成时间序列数据库。

Prometheus架构

prometheus架构

上面基本就可以分为四大块

  • Metrics相关模块( Pushgateway,Exporters)
  • Service Discovery (监控目标发现模块)可以采用静态配置、动态
  • 数据存储方面(上面推荐使用SSD),支持的方式:本地存储、远程存储。现在暂时我们采用的是本地存储方案,后续改进我在分享对应的技术
  • PromQl (查询语言,与关系型Mysql中sql类似)

数据才是重点,有兴趣可以参考官网的关于存储的解释
存储

应用

下面我直接分享下我们这边针对网络的应用场景,这边现在部署单机Prometheus。

下面是我们这边 Prometheus的启动脚本

#!/bin/sh
/bankapp/prometheus/prometheus  --config.file=/bankapp/prometheus/prometheus.yml --web.enable-lifecycle  --storage.tsdb.retention=120d > /bankapp/prometheus/logs/prometheus.log   2>&1 &

由于我们这边场景没有什么大流量,太多监控目标,暂时我们相当于把Prometheus充当数据库的用户,上面我们设置数据保留120 天.
–web.enable-lifecycle 这个数据为了我们可以通过直接通过 管理端Api直接重启Prometheus服务器
重启脚本

curl -X POST http://127.0.0.1:9090/-/reload

下面相关管理API接口
在这里插入图片描述

监控目标

Promethues中是支持多种监控目标发现机制,有静态配置、服务发现机制。暂时我们采用的是 Consul的服务发现,后续我会分享关于Consul中服务发现与 Prometheus相结合

Grafana展示监控数据

这边采用Grafana 为7.5.5版本展示Prometheus中监控数据

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值