sysstat 是一个开源且免费分发的软件项目,由GNU / Linux操作系统的几个命令行实用程序组成,允许您收集和报告系统活动信息。它是一个Linux监控工具,专为全局系统性能分析而设计。
功能一目了然
该软件可以监控大量的各种指标,允许用户配置存储数据历史的长度,支持SMP和UP机器,支持热插拔CPU,计算采样周期内的平均统计值,允许您保存文件中的统计信息,并自动检测已动态注册或创建的新设备。
此外,该程序支持SMP和UP机器,特别是具有多核或超线程CPU的计算机,支持无滴答CPU,允许用户将统计信息导出为CSV,JSON,XML和任何其他流行的文件格式,包括XML Schema和DTD文档,支持多种语言,并且它与允许您从sysstat的统计信息中生成图表的应用程序兼容。
包含哪些工具?
如前所述,sysstat包含各种命令行实用程序,其中我们可以提到sar,mpstat,sadf,iostat,cifsiostat,nfsiostat,sadc和pidstat。所有这些都可以从命令行界面访问,并允许您执行某些任务。
引擎盖,可用性和支持的操作系统
sysstat中包含的应用程序是用C编程语言编写的,这意味着它需要很少的CPU时间来运行。目前,它支持32位和64位指令集架构。
虽然它已经在Softoware Labs的Ubuntu,Debian和Arch Linux操作系统上成功测试,但sysstat也与正在开发的任何其他GNU / Linux发行版兼容。
此版本中的新功能:
- sar:修复需要重新分配缓冲区以容纳更多设备时可能发生的崩溃。
- sar / sadf / mpstat:将全局CPU统计数据计算为各个CPU统计数据的总和。
- mpstat:将节点“all”的统计信息计算为各个CPU统计信息的总和。
- sar:添加新的“-z”选项,告诉sar省略在采样期间没有活动的任何设备的输出。
- sar / sadf:现在,在显示软网统计信息时,最好考虑离线和在线CPU。
- sadc:通过编译不需要的函数来缩小sadc二进制文件的大小。
- sadf:将原始格式输出更改为符合CSV格式。
- sadf:重新排序以调试模式/原始格式显示的某些值。
- 为主要数字添加初始支持> 255。
- 更新sysstat.ioconf设备列表。
- mpstat:删除选项“-P ON”。 mpstat现在默认只显示在线CPU。
- sar和mpstat手册页已更新。
- pidstat:报告进程的CPU使用情况,作为所有线程的总和[11.6.3] [11.4.9]。
- sar:更改CPU恢复在线的变通方法[11.6.3] [11.4.9]。
- NLS更新:更新了各种翻译。
版本中的新功能:
- sar / sadc:从/ proc / meminfo添加了新的指标到内存统计信息。
- sadf:更新输出格式以考虑新的内存指标。
- [Peter Schiffer]:静态分析修复。
- [Peter Schiffer]:在压缩sa数据文件时更喜欢xz压缩程序[11.0.3]。
- [Peter Schiffer]:在配置脚本[11.0.4]中检测64位操作系统的便携方式。
- [Vasant Hegde]:sadc:在信号处理程序代码[11.0.3]中修复可能的竞争条件。
- 在iostat和sar手册页[11.0.3]中修复%util的说明。
- 修复upgrade_magic_section()函数中使用的错误大小。
- 添加新的sadc_options变量以配置脚本。
- 将--disable-man-group选项重命名为--disable-file-attr。此配置选项可防止构建过程设置正在安装的文件的属性。
- 确保在使用configure选项--enable-copy-only [11.0.3]时没有激活crontabs。
- 常见问题更新。
- RPM规范文件已更新。
- sar手册页已更新。
- sadc手册页已更新[11.0.3]。
- CREDITS文件已更新。
- 代码清理[11.0.3]。
版本11.1.2中的新功能:
- [Robert Elliott]:添加了irqtop命令。 irqtop监视每个CPU的/ proc / interrupts和/ proc / softirqs的差异,以及CPU统计信息。 irqtop目前在contrib目录中。
- [Lance Shelton]:添加了irqstat命令,这是一种更好的观察/ proc /中断方式,专为具有多个处理器的NUMA系统而设计。
- [Vasant Hegde]:sadc:如果父进程已经死了,不要发送SIGINT信号[11.0.2]。
- sadc:确保用于计算项目(CPU,网络接口等)的函数只被调用一次。
- sar和sadf现在告诉用户他们何时无法读取文件,因为endian格式不匹配。
- 当结束时间(使用选项-e指定)跨越24小时边界[11.0.2]时,修复了不完整的sar和sadf输出。
- cifsiostat / nfsiostat:修复单核CPU [11.0.2]上的输出。
- pidstat没有正确处理名称中包含空格的进程。现在已经修复[11.0.2]。
- NLS已更新。
- CREDITS文件已更新。
版本11.1.1中的新功能:
- 为sadf添加了选项-c:此选项允许用户将旧格式(至少9.1.6)的sa数据文件转换为最新格式(截至今天为11.1.1)。
- 更新sadf -H输出以打印数据文件日期,并判断此文件是否已从旧数据文件转换。
- 添加选项 - [0-9] +至sadf以显示当天的数据[11.0.1]。
- 使用statvfs()系统调用而不是弃用的statfs()来获取sar [11.0.1]的文件系统统计信息。
- sar:更严格的语法检查[11.0.1]。
- 删除sa_common.c [11.0.1]中不需要的包含文件。
- [Kosaki Motohiro]:更新32位CPU计数器[11.0.1]的解决方法。
- 在pidstat.h [11.0.1]中定义未知的调度策略。
- [Ivana Varekova]:测试fgets / fscanf调用的返回值[11.0.1]。
- Makefile已更新:创建tarball [11.0.1]时按照符号链接。
- sadf手册页更新[11.0.1]。
版本10.2.1中的
新功能:
- 添加了新的--enable-copy-only选项以配置脚本。在创建sysstat包时,此选项可能很有用,以确保仅将文件复制到$ DESTDIR并且未激活任何服务(例如,对于使用systemd的发行版)。
- pidstat:为pidstat I / O统计信息添加新指标:每任务块I / O延迟。
- 在安装systemd使用的sysstat服务时考虑$ DESTDIR变量。
- sadf -H,sadf -j和sadf -x现在也显示文件创建时间。
- 使用sizeof()而不是硬编码的大小值。
- pidstat手册页已更新。
- 化妆品修复。
- NLS已更新。
版本10.2.0中的新功能:
- pidstat中添加了一个新选项(-v),使用户能够显示与任务相关的线程数和文件描述符。
- pidstat中修复了几个错误。
版本10.1.7中的新功能:
- 新的指标已添加到sar网络设备统计信息中,给出了网络接口卡的利用率。
- 周围已经修复了几个错误。
版本10.1.6中的新功能:
- sar命令现在可以使用新选项“-F”显示文件系统统计信息(块和inode利用率)。
- 还修复了几个(小)错误。
版本10.1.5中的新功能:
- mpstat现在考虑每个处理器的每个中断,以便它们的数量加起来为CPU“all”显示的数字。
- 由于未在配置脚本中展开宏,因此无法再安装systemd单元文件。现在已经修复了。
版本10.1.4中的新功能:
- sar,pidstat和mpstat现在停止并在收到SIGINT信号(crtl / c)时显示其平均统计数据。 pidstat现在显示所有任务的任务UID。
- 选项-U已添加到pidstat;此选项告诉它显示任务的用户名而不是其UID。
- 如果此选项后跟用户名,则pidstat仅显示属于指定用户的任务。
版本10.1.3中的新功能:
- 网络和IPv4 / IPv6计数器已更改为64位格式,以便与最近的内核保持同步。
- iostat中添加了一个新选项,以防止它在系统启动后显示包含统计信息的第一个报告。
- 修复了几个错误。
版本10.0.5中的新功能:
- 此处向iostat添加了一个有趣的新功能:iostat现在可以显示一组或多组设备的统一统计信息。这应该对具有大量磁盘的机器有用。除此之外,这个版本包括一些针对sadc和sadf的错误修复,以及一个克罗地亚人的新翻译文件。
版本10.0.4中的新功能:
- sar -b results中不再考虑虚拟设备。
- iostat现在可以在将符号链接指定为参数时显示目标设备信息。
- 选项--disable-stripping已添加到配置脚本中。
- 已添加塞尔维亚语翻译。
10.0.0版中的新功能:
- 使用nfsiostat和cifsiostat命令修复了几个错误。
- 如果不需要,Sysstat的命令不再与传感器库链接。
- iostat错误地映射了大于256的设备映射器ID:现在已修复。
- NLS已更新,并添加了乌克兰语翻译。
版本9.1.7中的新功能:
- sar的新指标(活动和非活动内存量,阻止等待I / O完成的进程)
- 各种优化和改进
版本9.1.6中的新功能:
- 新的指标已添加到sar和sadc:hugepages利用率统计信息和平均CPU时钟频率。
- 此版本还包含错误修正。
版本9.1.5中的新功能:
- 电压输入统计数据以及其他一些指标已添加到sar的电源管理统计组中。
- NLS已更新。
- 已添加捷克语翻译。
版本9.1.4中的新功能:
- 新的指标已添加到sar的电源管理统计组(来自Redhat的Jan Kaluza的补丁)。此版本使您可以监控风扇速度和设备温度。您将需要为其安装libsensors库(lm_sensors项目的一部分)。
版本9.1.3中的新功能:
- 此版本中有许多新功能。添加了两个新命令(nfsiostat和cifsiostat),使用户能够显示NFS和CIFS文件系统的I / O统计信息(来自Redhat的Ivana Varekova提供)。其他改进主要涉及pidstat:现在可以使用带有选项-C的正则表达式来选择任务。 pidstat还添加了一个新选项来显示堆栈统计信息(Mario Konrad补丁)。
版本9.1.1中的新功能:
- 自上次sysstat发布以来已过去3个多月。在使用sysstat工作了10多年之后,我仍然很喜欢这个项目的工作,尽管妻子和两个孩子现在让它变得更加困难......即使事情变得更加缓慢,我决定开始一个新的开发系列,所以这里是9.1.1版本,随时可供您测试。请参阅下载页面中提供的发行说明。请注意,从现在开始,sysstat将不再支持早于2.6的内核。这使我摆脱了许多代码......
版本9.0.5中
什么是新:
- Sysstat现在应该能够漂亮地打印次要数字大于或等于256的设备名称。
- sadc手册页,NLS和常见问题解答已更新。
版本9.0.3中
什么是新:
- [Michael Blakeley]:选项-z添加到iostat。此选项告诉iostat省略在采样期间没有活动的任何设备的输出。
- [Tomasz Pala]:修复mpstat,其中应将中断值读作无符号整数。
- sar -n ALL未选择IPv6统计信息。现在已经修复了。
- iostat,sar和mpstat手册页已更新。
- sadf -x现在显示文件创建日期。
- 更新了XSD和DTD文档。
- NLS已更新。拉脱维亚语翻译补充道。
- CREDITS文件已更新。
- 代码清理。
版本9.0.2中的新功能:
- 此版本中有更多错误修复和改进:内存损坏已在iostat和pidstat中修复,当命令行中输入选项-p后面的逗号分隔值列表时,可能会发生段错误。关于改进,sadc现在可以收集除磁盘之外的分区统计信息。继续测试,因为我希望sysstat 9.0.x变得坚如磐石......!
版本9.0.1中的新功能:
- 修复了指针被释放两次的sar崩溃。
- NLS翻译已更新。
版本9.0.0中的新功能:
- 电源管理统计已添加到sar。
- 此版本不再将时间间隔截断为32位,因为在具有数百个CPU的计算机上显示平均值统计信息时可能会出现一些问题。
- 在某个特定订单中输入某些选项时,sar中没有正确解析参数的小错误已修复。
8.1.8版中的新功能:
- 为IPv6相关协议添加了支持。当iostat未使用-d选项时,它现在仅显示设备的统计信息(而不是分区)。
- 现在可以从iostat获得扩展统计信息,即使对于具有最新内核的分区也是如此。
- 修复了一个错误,其中iostat无法从sysfs中读取名称中包含斜杠的设备的统计信息(例如/ dev / cciss / c0d0)。
- 在iostat中修复了一个错误,其中%CPU用于服务硬IRQ和软IRQ被计算两次。
版本8.1.7中的新内容:
- 已向sar。 添加了对SNMP统计信息的支持
- 选项-l已添加到pidstat。
- 此选项使用户可以显示每个进程的整个命令行。
- 选项-h已添加到sar。
- 此选项会显示一条简短的帮助消息。
- valgrind检测到的一些内存泄漏已得到修复。
版本8.1.6中的新功能:
- 选项-h已添加到pidstat。
- 此选项用于在一行上水平显示所有活动。
- 在pidstat中修复了一个错误:当pidstat用于监视进程及其所有线程(使用pidstat的选项-t)时,如果线程组负责人终止,它可能会显示奇怪的值。 mpstat现在显示所有中断的统计信息,包括NMI,LOC等。
评论没有发现