宝在开发社区的贡献可谓功不可没,近日又将其系统监控工具Tsar代码上传至GitHub。据@淘叔度介绍,Tsar在淘宝内部已经被大量使用,它不仅可以监控CPU、IO、内存、TCP等系统状态,也可监控Apache、Nginx/Tengine、Squid等服务器状态。
Tsar(Taobao System Activity Reporter)可将收集到的数据存储在磁盘上,另外可以支持将数据存储到MySQL中,也可将数据发送到Nagios报警服务器。在展示数据层面,可以指定模块,并且支持对多条信息的数据进行Merge输出,如果带--live参数,还可以输出秒级的实时信息。
从架构上来看,Tsar基于模块化设计,源代码上来看主要包含两部分:框架和模块。框架源代码主要存放在src目录,模块源代码主要在modules目录中。框架提供对配置文件的解析、模块的加载、命令行参数的解析、应用模块的接口对模块原始数据的解析与输出。
Tsar的运行流程图如下:
主要执行流程:
- 解析输入
- 读取配置文件信息
- 加载相应模块
- Tsar的三种模式(print、live和cron)执行
- 释放资源
本次开源消息公布后,受到了社区开发者的欢迎:
TriChaos:喜欢没有浮华的字符界面,像和没有废话的人对话。
_Yuen:代码少逻辑清晰模块化又好,不得不说是一个好工具的典范。
淘木名:事后线上问题分析必备利器。
淘叔度:目前只支持C语言开发的插件。不过写个模块非常简单。
得益于淘宝开源
淘宝开源平台于2010年6月上线,至今,该平台已经发布了若干开源项目,其中不乏来自于淘宝之外的项目在此落户。目前注册会员数13002人,收录项目已达到2875个。目前,该平台关注度最高的5个项目分别是tfs、tair、webx、OceanBase、athrun。
相关推荐
【淘宝开源监控工具——tsar详解】 在IT运维领域,实时、全面地监控系统状态是保障服务稳定运行的关键。淘宝开源的tsar(Time Shared Average Report)就是这样一款强大的监控工具,它能帮助管理员获取系统及应用...
Tsar是淘宝的采集工具,主要用来收集服务器的系统信息(如cpu,io,mem,tcp等)以及应用数据(如squid haproxy nginx等),tsar支持实时查看和历史查看,方便了解应用和服务器的信息! 它类似于sar,能监控和收集...
**Tsar** 是淘宝内部使用的服务器监控工具,用于收集服务器的系统信息和应用数据,特点包括: - **实时监控**:能够实时查看服务器状态和应用数据; - **历史数据查询**:支持历史数据的查询,有助于问题定位和性能...
主 动健康检查、输入体过滤器、职能进程机制、Tengine中的命令行参数增加和Nginx监控增强(如使用实时监控工具Tsar)也是该部分讨论的重点。 Web应用开发章节讨论了ngx_lua和ngx_drizzle模块,以及它们的应用案例。...