统一监控平台

前沿

话说公司运维同事经常被领导说处理和解决问题太慢了~~~
在这里插入图片描述

运维同事感觉自己很委屈,每天24小时待命处理和解决各种问题,但效率还是很低~~~
在这里插入图片描述
在这里插入图片描述

所以运维的同事觉得太难了~~~
在这里插入图片描述

为了解决这种情况,运维同事找到了我,说有没有能够快速定位故障,分析收敛服务的运行指标情况,并作出相应的告警通知~~~

在这里插入图片描述

对于万能的程序员来说,我回答,当然可以了(哈哈,此时不装大佬,更待何时呢)~~~

开始

首先我们要命明确监控平台的功能作用,用一张图概括一下:

在这里插入图片描述
主要包括:

  • 指标采集
  • 数据存储
  • 数据展示
  • 监控告警
  • 告警通知

技术选型调研

  • Telegraf(StatsD)
  • Grafana
  • InfluxDB
  • AlarmServer

监控平台主要由Telegraf(StatsD) + Grafana + InfluxDB + Alarm Server 组成,StatsD 主要收集探针采集指标并将聚合数据信息发送给InfluxDb,由Grafana配置InfluxDB数据源和相应的告警功能,通过仪表盘展示接收数据信息,并将仪表盘嵌入到Alarm工程;Grafana仪表盘相应告警事件触发后回调到Alarm工程,Alarm接到通知后通过邮件、短信、微信、语音电话等通知指定人员。

telegraf

Telegraf 是收集和报告指标和数据的代理。Go语言编写。Telegraf 集成了直接从其运行的容器和系统中提取各种指标,事件和日志,从第三方API提取指标,甚至通过StatsD和Kafka消费者服务监听指标。它还具有输出插件,可将指标发送到各种其他数据存储,服务和消息队列,包括InfluxDB,Kafka,OpenTSDB,Datadog等等。

详情请看:Telegraf介绍和使用

InfuxDB

InfluxDB是一个由InfluxData开发的开源时序型数据。使用 Go 语言编写,着力于高性能地查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据。

详情请看: InfluxDB 介绍和使用

Grafana

grafana 是一款采用 go 语言编写的开源应用,是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知。
它主要有以下六大特点: 1、展示方式:快速灵活的客户端图表,面板插件有许多不同方式的可视化指标和日志,官方库中具有丰富的仪表盘插件,比如热图、折线图、图表等多种展示方式;

2、数据源:Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,CloudWatch和KairosDB等;
3、通知提醒:以可视方式定义最重要指标的警报规则,Grafana将不断计算并发送通知,在数据达到阈值时通过Slack、PagerDuty等获得通知;
4、混合展示:在同一图表中混合使用不同的数据源,可以基于每个查询指定数据源,甚至自定义数据源;
5、注释:使用来自不同数据源的丰富事件注释图表,将鼠标悬停在事件上会显示完整的事件元数据和标记;
6、过滤器:Ad-hoc过滤器允许动态创建新的键/值过滤器,这些过滤器会自动应用于使用该数据源的所有查询。

详情请看: grafana介绍和使用

技术结构图

在这里插入图片描述
Springboot Actuator 部分jvm指标数据通过https形式入库。

类库说明

java

在这里插入图片描述

C/C++

在这里插入图片描述

php

在这里插入图片描述

python

在这里插入图片描述

通知方式

在这里插入图片描述

展示图

系统信息

在这里插入图片描述

业务指标收集

在这里插入图片描述

说明

本文只做学习参考,如有任何不准确的地方欢迎指正。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值