背景
性能监控是做性能工作过程中一个必不可少的步骤,各种开源的、商业的监控工具应有尽有,实在傲娇的自己写代码去实现的也有很多。笔者所在工作环境,因为这样或那样的原因,在进行性能测试时,除Docker容器监控外,其他的涉及Linux虚拟机的基本还是用一款叫Nmon的工具来监控的,但是因为企业系统架构大多采取微服务形式,再加上多实例负载均衡部署,需要监控的服务数量就多了。而我们团队在进行监控结果呈现时是通过进程号筛选CPU数据的,一方面数据呈现延迟,另一方面给监控数据输出带来了很多重复、繁琐的工作。本文讲解如何使用 Alain Dejoux 在Github上的一个项目,做到Nmon数据的实时呈现。
nmon简介
This systems administrator, tuner, benchmark tool gives you a huge amount of important performance information in one go. It can output the data in two ways:
1.On screen
2.Save the data to a comma separated file
source:http://nmon.sourceforge.net/pmwiki.php
nmon支持两种监控模式
- 输入命令,在一些终端上实时呈现最新结果 ,此种方式没有趋势图呈现
- 将采样数据保存至一个结果文件后用nmon analyser xx.xls打开,此种方式具有静态、延后性
以上都属于nmon工具的基本用法,现在介绍下nmon2ifluxdb使nmon监控数据推送至Influxdb时序数据库,做到数据实时呈现