您现在的位置是:亿华云 > IT科技类资讯
实用|从0到1 搭建Web性能监控系统
亿华云2025-10-04 04:04:10【IT科技类资讯】6人已围观
简介之前给研发团队简单做了一次技术分享,主要讲了为什么我们要自己做监控,监控的指标维度,监控基本流程及常见监控工具介绍,最后如何从零快速开始搭建一套自己的监控工具。 工具介绍1. Stats
工具介绍

1. Statsd 是控系一个使用Node开发网络守护进程,它的实用特点是通过UDP(性能好,及时挂了也不影响主服务)或者TCP来监听各种数据信息,搭建然后发送聚合数据到后端服务进行处理。控系常见支持的实用「Graphite」,「ElasticaSearch」,搭建「InfluxDB」 等等 ,控系它集成了各种语言的实用客户端API,这里我们使用了jsocol/pystatsd: A Python client for statsd进行数据收集。搭建
2. Graphite 是控系一套Python写的开源编程接口,主要是高防服务器用来收集服务器的及时状态,在这里主要作为statsd的数据后端。分为了三个子项目
- carbon 守护进程,接收StatsD发送过来的原始统计数据。
- whisper 用来存储统计数据的时间序列数据库。
- graphite webapp 用来图形化展示统计数据的web项目
3. Grafana 使用Go开发,可以在界面上设计调整自己的统计图表,支持多重报警,可定制化。
安装
在这里我使用了[synthesize(https://github.com/obfuscurity/synthesize)进行快速安装Graphite和Statsd包,这里面需要注意安装数据在 **/opt/graphite ** 目录下面。这里面我们安装启动了
service carbon-cache start # statsd数据处理后会进入中转 service memcached start # 缓存 service collectd start # 收集服务负载可选 service apache2 start # 这可以通过使用nginx替换 service statsite start # statsd的后端服务这里面需要单独启动graphite-web应用,端口启动:0.0.0.0:8080,后面配置数据源需要使用。
cd /opt/graphite/ sudo ./run-graphite-devel-server.py /opt/graphite/Grafana数据包可以通过手动下载安装也可以通过apt-get 安装
sudo apt-get install grafana启动之后访问3000端口就能看到这样一个页面,默认的账号密码:admin,云服务器提供商admin可以通过配置github或者google登录。

login
数据收集
Python端我们使用statsd进行数据统一打点到到监控服务器收集
>>> import statsd >>> c = statsd.StatsClient(localhost, 8125) >>> c.incr(foo) # Increment the foo counter. >>> c.timing(stats.timed, 320) # Record a 320ms stats.timed. 这里面我们通过Python把数据收集到statsite,通过Graphite Web服务来进行展示。配置Graphite
进入Grafana后台,进行配置点击 「Data Sources」进行配置Graphite的数据(来自前端statsd收集)。

data_source
接下来配置对应的数据展示:

add-graph
到此基本的数据配置就完了,恭喜你拥有了一个完整的监控系统。
为了方便理解这里我补充一下,数据从应用内,添加agent,把应用的时间性能数据通过statsd收集发送到服务端,通过carbon统计,whisper存储最后展示在graphite,其中这里面我们用grafana来替代了graphite原生的UI展示,也就是我们题图的效果。
网站模板很赞哦!(528)
站长推荐
因为域名解析需要同步到DNS根服务器,而DNS根服务器会不定时刷,只有DNS根服务器刷新后域名才能正常访问,新增解析一般会在10分钟左右生效,最长不会超过24小时,修改解析时间会稍微延长。
前端 | React深入:从Mixin到HOC再到Hook
中国科大实现室温固态可编程量子处理器
一路打怪升级,360推荐系统架构演进
其次,一般域名注册有一个获取密码的按钮,域名注册商点击后会向您发送密码。在得到域名注册商发送的密码后,将其传输到域名服务提供商网站,然后输入密码,此时域名呈现申请状态。提交申请后,原注册人通常会向您发送一封电子邮件,询问您是否同意转让。此时,您只需点击同意转移按钮,域名注册商就可以成功转移。
流行的十四个机器学习编程语言框架和工具
支撑百万并发的数据库架构如何设计?
11个教程中不常被提及的JavaScript小技巧