文章目录

  • 简介
  • 总体架构
  • 主要执行流程有:
  • 安装

参考博客:
Linux命令
Linux系统性能监控工具介绍之-tsar
推荐

简介

tsar是淘宝自己开发的一个采集工具,主要用来收集服务器的系统信息(如cpu,io,mem,tcp等),以及应用数据(如squid haproxy nginx等)。收集到的数据存储在磁盘上,可以随时查询历史信息,输出方式灵活多样,另外支持将数据存储到MySQL中,也可以将数据发送到nagios报警服务器。tsar在展示数据时,可以指定模块,并且可以对多条信息的数据进行merge输出,带–live参数可以输出秒级的实时信息。

总体架构

Tsar是基于模块化设计的程序,程序有两部分组成:框架和模块。
框架程序源代码主要在src目录,而模块源代码主要在modules目录中。
框架提供对配置文件的解析,模块的加载,命令行参数的解析,应用模块的接口对模块原始数据的解析与输出。 模块提供接口给框架调用。
tsar依赖与cron每分钟执行采集数据,因此它需要系统安装并启用crond,安装后,tsar每分钟会执行tsar –cron来定时采集信息,并且记录到原始日志文件。

主要执行流程有:

  1. 解析输入
    根据用户的输入,初始化一些全局信息,如间隔时间,是否merge,是否指定模块,运行模式

  2. 读取配置文件信息
    主要解析tsar的配置文件,如果include生效,则会解析include的配置文件
    配置文件用来获得tsar需要加载的模块,输出方式,每一类输出方式包含的模块,和此输出方式的接收信息
    如mod_cpu on代表采集cpu的信息
    output_interface file,nagios表示向文件和nagios服务器发送采集信息和报警信息

  3. 加载相应模块
    根据配置文件的模块开启关闭情况,将模块的动态库load到系统

  4. tsar的三种运行模式
    tsar在运行的时候有三种模式:
    print模式仅仅输出指定的模块信息,默认显示最近一天的;
    live模式是输出当前信息,可以精确到秒级
    cron模式,此一般是crontab定时执行,每一分钟采集一次所有配置的模块信息,并将数据写入原始文件,在cron运行的时候 会判断是否配置输出到db或者nagios,如果配置则将相应格式的数据输出到对应接口。

  5. 释放资源
    程序最后,释放动态库,程序结束

安装

官网地址

$ git clone git://github.com/kongjian/tsar.git
$ cd tsar
$ make
# make install
$ wget -O tsar.zip https://github.com/alibaba/tsar/archive/master.zip --no-check-certificate
$ unzip tsar.zip
$ cd tsar
$ make
# make install
  • 配置文件
/etc/tsar/tsar.conf, which is tsar's main configuration file;
/etc/cron.d/tsar, is used to run tsar to collect information every minute;
/etc/logrotate.d/tsar will rotate tsar's log files every month;
/usr/local/tsar/modules is the directory where all module libraries (*.so) are located;
  • 参数
    null:查看默认的mods历史数据, tsar--modname:指定要显示的模块, tsar --cpu-L / - 列表:列表可用moudule, tsar -L-l / - live:显示实时信息, tsar -l --cpu-i / - interval:报告的设置间隔, tsar -i 1 --cpu-s / - spec:指定模块详细信息字段, tsar --cpu -s sys,util-D / - 细节:不要将数据转换为K / M / G, tsar --mem -D-m / - merge:合并乘数为1, tsar --io -m-I / - item:显示spec项目数据, tsar --io -I sda-d / - date:指定数据,YYYYMMDD或n表示n天前-C / - 检查:显示最后的收集数据-h / - 帮助:显示帮助, tsar -h
$tsar -h
Usage: tsar [options]
Options:-check         查看最后一次的采集数据--check/-C     查看最后一次tsar的提醒信息,如:tsar --check / tsar --check --cpu --io--cron/-c      使用crond模式来进行tsar监控--interval/-i  指明tsar的间隔时间,默认单位分钟,带上--live参数则单位是秒--list/-L      列出启用的模块--live/-l      查看实时数据--file/-f      指定输入文件--ndays/-n     指定过去的数据天数,默认1天--date/-d      指定日期,YYYYMMDD或者n代表n天前--detail/-D    能够指定查看主要字段还是模块的所有字段--spec/-s      指定字段,tsar –cpu -s sys,utilModules Enabled:--cpu               列出cpu相关的监控计数--mem               物理内存的使用情况--swap              虚拟内存的使用情况--tcp               TCP 协议 IPV4的使用情况--udp               UDP 协议 IPV4的使用情况--traffic           网络传出的使用情况--io                Linux IO的情况--pcsw              进程和上下文切换--partition         磁盘使用情况--tcpx              TCP 连接相关的数据参数--load              系统负载情
$tsar  --swap --load #查看swap
$tsar  --mem
$tsar  --io

tsar--系统性能监控工具相关推荐

  1. Linux:系统性能监控工具-tsar安装和使用

    在上家公司做性能压力测试时就用过tsar,但总结文档留在了内部,正好借着最近工作内容又用上了tsar,总结起来 目录 前言 tsar 介绍 总体架构 安装tasr tsar配置介绍 配置文件 定时任务 ...

  2. 系统性能监控工具ssar实例精选 | 龙蜥SIG

    跟踪诊断技术 SIG 致力于为操作系统生态提供系统性,工具化,并以数据为支撑的发现.跟踪和诊断问题的能力. SIG目标:为龙蜥社区(OpenAnolis)开源操作系统,提供一个全栈覆盖内核与核心组件的 ...

  3. Linux系统性能监控工具Glances

    转载来源 :https://mp.weixin.qq.com/s/ZshbHmaSbpH9E_lMNXYzjg 一.Glances介绍 glances是一个基于python语言开发,可以为linux或 ...

  4. 分布式系统性能监控工具,初探Pinpoint Agent启动源码

    作者:未完成交响曲,资深Java工程师!目前在某一线互联网公司任职,架构师社区合伙人! 本文源码基于Pinpoint 2.0.3-SNAPSHOT版本 官方开源地址:https://github.co ...

  5. vmstat - Linux系统性能监控工具

    顾名思义,vmstat是virtual memory统计工具.不过,vmstat其实不仅仅可以汇报内存使用情况,磁盘活动,cpu利用情况等也会同时显示出来,因为这些和virtual memory活动也 ...

  6. linux guard什么进程,使用linux系统性能监控工具KSysguard监控远端主机介绍

    KDE System Guard默认的窗口 前端图形界面使用传感器(sensors)获得要显示的信息.传感器返回的可以是一个简单的数值或更复杂的信息如表格.针对不同的信息类型都提供了一个或多个显示界面 ...

  7. Java性能优化权威指南-读书笔记(一)-操作系统性能监控工具

    一:CPU 1. 用户态CPU是指执行应用程序代码的时间占总CPU时间的百分比. 系统态CPU是指应用执行操作系统调用的时间占总CPU时间的百分比.系统态CPU高意味着共享资源有竞争或者I/O设备之间 ...

  8. java系统监控_Java Metrics系统性能监控工具

    Metrics是一个Java库,可以对系统进行监控,统计一些系统的性能指标. 比如一个系统后台服务,我们可能需要了解一下下面的一些情况: 1.每秒钟的请求数是多少(TPS)? 2.平均每个请求处理的时 ...

  9. Linux 监控工具 tsar(转)

    转自:https://blog.csdn.net/u010945668/article/details/113904993 简介     tsar是一个淘宝开发的服务器信息采集工具. 支持采集的信息如 ...

  10. Linux 监控工具 tsar

    简介     tsar是一个淘宝开发的服务器信息采集工具. 支持采集的信息如下: 系统信息:如cpu.io.mem.tcp等 应用数据:squid.haproxy.nginx等 其他:自定义模块 具体 ...

最新文章

  1. 模型树——就是回归树的分段常数预测修改为线性回归 对于非线性回归有较好的预测效果...
  2. texture android,Android OpenGL结合了SurfaceTexture(外部图像)和普...
  3. 飞鹤乳业CIO:移动化让企业品牌和消费者紧密连接
  4. [PHP] 项目实践中使用的IOC容器思想
  5. 【Heritrix基础教程之2】Heritrix基本内容介绍
  6. 精选论文集:三维点云有哪些必读的论文?
  7. 图解用户登录验证业务流程(推荐)
  8. 2d-x中Lua类型强转问题
  9. java中方法_java中的方法
  10. cadence17.4 设计PCB零基础教程入门学习过程
  11. 扫码枪扫码直接提交ajax,js监听页面扫码枪
  12. 领域应用 | 知识结构化在阿里小蜜中的应用
  13. 自己开发的“万能数据库查询分析器”终于有了较大的成果
  14. c语言西南交通大学出版社答案,西南交通大学C++上机实验答案
  15. Oracle_登录数据库系统
  16. 惠普打印机2132故障灯大全图解_绝对干货!二手打印机选购攻略!
  17. 【python】数据挖掘分析清洗——离群点(异常值)处理方法汇总
  18. ubuntu解压rar文件
  19. ZZNUOJ_C语言1046:奇数的乘积(完整代码)
  20. PPT提示缺少字体怎么解决?

热门文章

  1. linux 文本行倒叙,Linux文本行倒序排列6种方法
  2. 基于SpringBoot+layui研发的后台管理平台
  3. java读取vsd文件_java下载文件指定目录下的文件
  4. HDU--1871--细节处理--记忆化暴力查找
  5. 透过镜头放大镜行业现状调研及趋势分析报告
  6. tl494c封装区别_tl494详解(特性、封装、内部电路方框图)
  7. 二手房---如何砍价(防坑笔记二)
  8. w ndows7有线网络连接不上,七仔教你学Windows 7:如何连接网络
  9. 广州未成年子女落户政策需要什么申请条件和申办材料
  10. cmd下载远程linux的文件,Java利用ssh协议实现从远程Linux服务器下载文件和文件夹...