【No.2】监控Linux性能25个命令行工具
接着上一篇博文继续 【No.1】监控Linux性能25个命令行工具
10:mpstat -- 显示每个CPU的占用情况
该命令可以显示每个CPU的占用情况,如果有一个CPU占用率特别高,那么有可能是一个单线程应用程序引起的
mpstat -P ALL 1
Linux 3.13.0-75-generic (lnmp) 06/25/2016 _x86_64_ (2 CPU) 02:28:59 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
02:29:00 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
02:29:00 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
02:29:00 PM 1 0.00 0.00 0.00 1.00 0.00 0.00 0.00 0.00 0.00 99.00
11:pidstat -- 查看进程的CPU占用率
该命令输出进程的CPU占用率,该命令会持续输出,并且不会覆盖之前的数据,可以方便观察系统动态
$ pidstat 1
Linux 3.13.0-75-generic (lnmp) 06/25/2016 _x86_64_ (2 CPU) 02:30:20 PM UID PID %usr %system %guest %CPU CPU Command
02:30:21 PM 0 9 0.00 0.98 0.00 0.98 1 rcuos/1 02:30:21 PM UID PID %usr %system %guest %CPU CPU Command
02:30:22 PM 0 977 1.00 0.00 0.00 1.00 1 redis-server 02:30:22 PM UID PID %usr %system %guest %CPU CPU Command
02:30:23 PM 1000 19938 0.00 1.00 0.00 1.00 1 sshd
02:30:23 PM 1000 20909 0.00 1.00 0.00 1.00 0 sshd
12:free -- 查看系统内存的使用情况
free命令可以查看系统内存的使用情况,-m参数表示按照兆字节展示。最后两列分别表示用于IO缓存的内存数,和用于文件系统页缓存的内存数。需要注意的是,第二行-/+ buffers/cache,看上去缓存占用了大量内存空间。这是Linux系统的内存使用策略,尽可能的利用内存,如果应用程序需要内存,这部分内存会立即被回收并分配给应用程序。因此,这部分内存一般也被当成是可用内存。
如果可用内存非常少,系统可能会动用交换区(如果配置了的话),这样会增加IO开销(可以在iostat命令中提现),降低系统性能。
$ free -m
total used free shared buffers cached
Mem: 363 313 50 0 3 104
-/+ buffers/cache: 204 159
Swap: 767 155 612
13:sar -- 查看网络设备的吞吐率
sar命令在这里可以查看网络设备的吞吐率。在排查性能问题时,可以通过网络设备的吞吐量,判断网络设备是否已经饱和。
sar -n DEV 1
Linux 3.13.0-75-generic (lnmp) 06/25/2016 _x86_64_ (2 CPU)
02:33:01 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
02:33:02 PM eth0 15.84 15.84 0.93 1.69 0.00 0.00 0.00 0.00
02:33:02 PM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:33:02 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
查看TCP连接状态
$ sar -n TCP,ETCP 1
Linux 3.13.0-75-generic (lnmp) 06/25/2016 _x86_64_ (2 CPU) 02:35:21 PM active/s passive/s iseg/s oseg/s
02:35:22 PM 0.00 0.00 8.00 8.00
active/s:每秒本地发起的TCP连接数,既通过connect调用创建的TCP连接
passive/s:每秒远程发起的TCP连接数,即通过accept调用创建的TCP连接
retrans/s:每秒TCP重传数量
14:NetHogs-监视每个进程使用的网络带宽
NetHogs是一个开放源源代码的很小程序(与Linux下的top命令很相似),它密切监视着系统上每个进程的网络活动。同时还追踪着每个程序或者应用所使用的实时网络带宽
$ sudo apt-get install nethogs
$ sudo nethogs
15:iftop-监视网络带宽
iftop是另一个在控制台运行的开放源代码系统监控应用,它显示了系统上通过网络接口的应用网络带宽使用(源主机或者目的主机)的列表,这个列表定期更新。iftop用于监视网络的使用情况,而'top'用于监视CPU的使用情况。iftop是'top'工具系列中的一员,它用于监视所选接口,并显示两个主机间当前网络带宽的使用情况
$ sudo apt-get install iftop
$ sudo iftop
工具列表
IPTraf
psacct 或者 acct
Monit
Monitorix
Arpwatch
Suricata
VnStat PHP
Nagios
Zabbix
1:IPTraf-实时局域网IP监控
IPTraf是一个在Linux控制台运行的、开放源代码的实时网络(局域网)监控应用。它采集了大量信息,比如通过网络的IP流量监控,包括TCP标记、ICMP详细信息、TCP/UDP流量分离、TCP连接包和字节数。同时还采集有关接口状态的常见信息和详细信息:TCP、UDP、IP、ICMP、非IP,IP校验和错误,接口活动等。
有关IPTraf工具用法以及其他更多信息,请访问:IPTraf网络监控工具
2: psacct 或者 acct - 监视用户活动
psacct或者acct工具用于监视系统里每个用户的活动状况。这两个服务进程运行在后台,它们对系统上运行的每个用户的所有活动进行近距离监视,同时还监视这些活动所使用的资源情况。
系统管理员可以使用这两个工具跟踪每个用户的活动,比如用户正在做什么,他们提交了那些命令,他们使用了多少资源,他们在系统上持续了多长时间等等。
有关这些命令的安装和用法举例信息,请参阅文章:使用psacct或者acct监视用户活动
3:Monit - Linux进程和服务监控工具
Monit是一个免费的开源软件,也是一个基于网络的进程监控工具。它能自动监控和管理系统进程,程序,文件,文件夹,权限,总和验证码和文件系统。
这个软件能监控像Apache, MySQL, Mail, FTP, ProFTP, Nginx, SSH这样的服务。你可以通过命令行或者这个软件提供的网络借口来查看系统状态。
更多内容请参阅:用Monit监控Linux进程
4:Monitorix-系统和网络监控
Monitorix 是一个免费的轻量级应用工具,它的设计初衷是运行和监控Linux/Unix服务器系统和资源等。它有一个HTTP 网络服务器,这个服务器有规律的收集系统和网络的信息并以图形化的形式展示出来。它监控系统的平均负载和使用,内存分配、磁盘健康状况、系统服务、网络端口、邮件统计(Sendmail,Postfix,Dovecot等),MySQL统计,等等。它就是用来监控系统的总体性能,帮助发现失误、瓶颈和异常活动的

5:Arpwatch – 以太网活动监视器
Arpwatch被设计用来监控Linux上的以太网地址解析 (MAC和IP地址的变化)。他在一段时间内持续监控以太网活动并输出IP和MAC地址配对变动的日志。它还可以向管理员发送邮件通知,对地址配对的增改发出警告。这对于检测网络上的ARP攻击很有用。
更多信息请参阅 : Arpwatch to Monitor Ethernet Activity
6:Suricata – 网络安全监控
Suricata 是一个开源的高性能网络安全、入侵检测和反监测工具,可以运行Linux、FreeBSD和Windows上。非营利组织OISF (Open Information Security Foundation)开发并拥有其版权。
更多信息请参阅 : Suricata – A Network Intrusion Detection and Prevention System
7:VnStat PHP – 网络流量监控
VnStat PHP 是流行网络工具"vnstat"的基于web的前端呈现。VnStat PHP 将网络使用情况呈现在漂亮的图形界面中。他可以显示以小时、日、月计的上传和下载流量并输出总结报告。
更多信息请参阅 : VnStat PHP – Monitoring Network Bandwidth
8:Nagios – 网络/服务器监控
Nagios是领先而强大的开源监控系统,他可以让网络/系统管理员在问题影响到正常的业务之前发现并解决它们。有了Nagios系统,管理员可以在单个窗口内远程检测Linux、Windows、开关、路由器和打印机。它可以危险警告并指出系统/服务器是否有异常,这可以间接帮助你在问题发生之前采取抢救措施。
9:Zabbix 同Nagios
原文地址:【No.2】监控Linux性能25个命令行工具
标签:CPU 负载 load linux 性能 监控
智能推荐
- 最有用的Linux命令行使用技巧集锦
- 【No.1】监控Linux性能25个命令行工具
- 【实战】Docker 入门实战一:安装Dockeer
- 【No.2 Ionic】Android打包
- 【Linux】Linux 常用命令汇总
【No.2】监控Linux性能25个命令行工具的更多相关文章
- 【No.1】监控Linux性能25个命令行工具
如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?通过以下命令或者工具可以快速定位 top vmstat lsof tcpdump netsta ...
- 显示器 Linux 性能 18 (一个命令行工具传递)
对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.在IT领域作为一名Linux系统的管理员工作5年后,我逐渐认识到监控和保持系统启动并执行是多么的不easy.基于此原因. ...
- [Linux] tmux 终端复用命令行工具
tmux 终端复用命令行工具 tmux 是一款终端复用命令行工具,通常用于 Terminal 的窗口管理.可以在终端软件重启后通过命令行恢复上次的 session. 安装运行 macOS 上使用 Ho ...
- Linux强制杀进程命令行工具
需求, 有时候我们会有手动启动程序, 但是又在后台, 没有像服务那样有start, 和stop的程序, 这时候需要用强制杀进程方式 涉及工具, awk, sed, xargs, kill 需求一: 已 ...
- 20个linux命令行工具监视性能(下)
昨天晚上第一次翻译了<20 Command Line Tools to Monitor Linux Performance>中的前十个命令,翻译得不是很好,今天晚上继续把后面的十个也翻译给 ...
- 微软开放技术发布针对 Mac 和 Linux 的更新版 Azure Node.JS SDK 和命令行工具
发布于 2013-12-04 作者 Eduard Koller 这次为我们使用Linux 的朋友带来了更多关于部署云上虚拟机的消息.今天,微软开放技术有限公司 (MS Open Tech),想与大家分 ...
- 从零开始打造个人专属命令行工具集——yargs完全指南
前言 使用命令行程序对程序员来说很常见,就算是前端工程师或者开发gui的,也需要使用命令行来编译程序或者打包程序 熟练使用命令行工具能极大的提高开发效率,linux自带的命令行工具都非常的有用,但是这 ...
- -Shell 命令行工具 Cmder Babun Zsh MD
目录 目录 Cmder:window 下增强型的 cmd + bash 简介 配置 解决中文乱码问题 添加到右键菜单 添加至环境变量 修改命令提示符号 自定义aliases Readme.md 设置c ...
- Linux 性能监控之命令行工具
引言 对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因.这个命令行工具列表提供了足够的 ...
随机推荐
- js:数据结构笔记9--二叉树
树:以分层的方式存储数据:节点:根节点,子节点,父节点,叶子节点(没有任何子节点的节点):层:根节点开始0层: 二叉树:每个节点子节点不超过两个:查找快(比链表),添加,删除快(比数组): BST:二 ...
- 前端JSON使用总结
JSON: JavaScript Object Notation(JavaScript 对象表示法)的简称. 1. 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaS ...
- 【转】包管理器Bower详细讲解
包管理器Bower 今天自己用Angular写东西的时候,下载了Angular-seed项目,发现需要用到bower,之前也使用过,没有仔细了解,今天趁机了解到一些. bower的官网地址: ...
- python tile
tile(A,reps) 创建一个数组,通过reps次重复A >>>a=np.arry([0,1,2])#创建了一个数组 >>>np.tile(a,2)#创建了一个 ...
- android sdk 安装排错
如果你遇到了消息为“Failed to fetch URL…” 的错误提示,那么你需要将HTTPS方式改为HTTP方式,方法如下: 碰到这样错误,请按下边的操作. 1)在菜单选择Tools—Optio ...
- fetch API
一.什么是fetch? fetch的作用类似于XMLHttpRequet的作用,用于异步请求网络,其提供的API更加的完善. fetch提供了Request和Response对象的定义,用于自定义网络 ...
- 序号自增key的使用
由于在模板中,需要输出序号,但是从数据库中提取的话,保证不了序号的连续性. 在模板中我就使用foreach循环,查手册看到foreach的使用 但是我还是没从手册中学会key的使用.尝试使用 结果,如 ...
- Html - Bootstrap Panel面板
http://v3.bootcss.com/components/#panels Bootstrap Panel面板 <div class="panel panel-default&q ...
- $_ 与 $PSItem
PowerShell 3.0 中的$PSItem 此文章于2012年11月4日发表在PowershellPowershell小技巧并加以Powershell 3.0管道的标签 by Mooser Le ...
- 使用 matlab 产生GK101任意波数据文件的方法
一.引言 MATLAB是由美国mathworks公司发布的主要面对科学计算.可视化以及交互式程序设计的高科技计算环境.它不但包含高效的数值计算.数据处理能力,而且简单易用,是工程师日常研发过程中不可缺 ...

