sysstat——系统性能监控神器

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

sysstat是一个软件包,包含监测系统性能及效率的一组工具,这些工具对于我们收集系统性能数据,比如:CPU 使用率、硬盘和网络吞吐数据,这些数据的收集和分析,有利于我们判断系统是否正常运行,是提高系统运行效率、安全运行服务器的得力助手。

官方网站: http://sebastien.godard.pagesperso-orange.fr

包含的工具

  • iostat

    
    > 输出CPU的统计信息和所有I/O设备的输入输出(I/O)统计信息
    
  • mpstat

    
    > 关于CPU的详细信息(单独输出或者分组输出)
    
  • pidstat

    
    > 关于运行中的进程/任务、CPU、内存等的统计信息
    
  • sar

    
    > 保存并输出不同系统资源(CPU、内存、IO、网络、内核等)的详细信息
    
  • sadc

    
    > 系统活动数据收集器,用于收集sar工具的后端数据
    
  • sa1

    
    > 系统收集并存储sadc数据文件的二进制数据,与sadc工具配合使用
    
  • sa2

    
    > 配合sar工具使用,产生每日的摘要报告
    
  • sadf

    
    > 用于以不同的数据格式(CVS或者XML)来格式化sar工具的输出
    
  • sysstat

    
    > sysstat 工具包的 man 帮助页面。
    
  • nfsiostat

    
    > NFS(Network File System)的I/O统计信息
    
  • cifsiostat

    
    > CIFS(Common Internet File System)的统计信息
    

安装

  • CentOS

    通过yum安装:

    yum install sysstat

    或者通过rpm包安装:

    wget -c http://pagesperso-orange.fr/sebastien.godard/sysstat-11.7.3-1.x86_64.rpm
    
    sudo rpm -Uvh sysstat-11.7.3-1.x86_64.rpm

    推荐rpm包方式安装,因为能随时安装最新版本。

  • Ubuntu

    apt-get install sysstat
  • 编译安装

    官网下载最新的源码包,并解压。编译和安装命令:

    $ ./configure
    $ make
    $ su
    <enter root password>
    # make install

其他具体的安装信息可以看官方文档

查看是否成功安装:

mpstat -V
sysstat version 9.0.4
(C) Sebastien Godard (sysstat <at> orange.fr)

定时统计任务

如果是用yumapt-get方式安装,默认已经在/etc/cron.d/sysstat中配置好了计划日志;如果是编译安装或没有,可以手动配置,内容大致如下:

# Run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib64/sa/sa1 1 1
# 0 * * * * root /usr/lib64/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib64/sa/sa2 -A

统计的日志文件会存放在/var/log/sa这个目录下。每10分钟就进行一次日志的记录,在23:53对一天的日志进行汇总。

  • /usr/lib64/sa/sa1是一个可以使用 cron 进行调度生成二进制日志文件的 shell 脚本
  • /usr/lib64/sa/sa2是一个可以将二进制日志文件转换为用户可读的编码方式的 shell 脚本

可能会碰到的问题:

安装后首次执行sar会报如下错误:

无法打开 /var/log/sa/sa25: 没有那个文件或目录

原因是安装完sysstat后,定时任务还没生成那个文件。此处的 25 指的是日期。可以手动生成文件:

sudo sar -o 25

更多关于定时任务或开机启动的配置可以参考官方文档

参考资料

原文地址: https://shockerli.net/post/linux-tool-sysstat/


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
4月前
|
运维 Prometheus 监控
在Linux中,如何进行系统性能监控?
在Linux中,如何进行系统性能监控?
|
4月前
|
Prometheus 监控 Cloud Native
简单搭建基本Prometheus监控系统
简单搭建基本Prometheus监控系统
|
4月前
|
存储 数据采集 Prometheus
Prometheus 监控系统常见技术问题大曝光!解决之道让你意想不到!
【8月更文挑战第5天】Prometheus是一款强大的监控工具,但在应用中常遇技术难题。案例一中,因配置错误导致CPU使用率数据不准,调整`metrics_path`可解决。案例二涉及告警规则不触发,修正表达式即可。案例三关于数据存储溢出,设置保留策略如`30d`能缓解。案例四是监控指标丢失,增强网络稳定性和添加重试机制有助于恢复。面对这些问题,细致排查与合理配置是关键。
380 0
|
6月前
|
缓存 监控 Linux
Linux系统性能监控详解
Linux系统性能监控详解
47 1
|
6月前
|
存储 Prometheus 运维
Prometheus监控系统中常见技术问题处理指南
本文档是Prometheus使用指南,主要针对用户在使用过程中可能遇到的技术问题提供解决方案。
605 2
|
6月前
|
Prometheus 监控 Cloud Native
搭建服务端性能监控系统 Prometheus 详细指南
搭建Prometheus监控系统,涉及Ubuntu上Docker的安装,通过`docker run`命令启动Prometheus容器,并挂载配置文件。配置文件默认示例可以从GitHub获取,调整`scrape_interval`和`targets`以监控Prometheus自身及Node Exporter(提供系统指标)。Node Exporter以Docker容器形式运行在9100端口。完成配置后,重启Prometheus容器,通过Web界面查看监控数据。后续将介绍结合Grafana进行可视化。
|
7月前
|
运维 监控 Linux
提升系统稳定性:Linux服务器性能监控与故障排查实践深入理解与实践:持续集成在软件测试中的应用
【5月更文挑战第27天】在互联网服务日益增长的今天,保障Linux服务器的性能和稳定性对于企业运维至关重要。本文将详细探讨Linux服务器性能监控的工具选择、故障排查流程以及优化策略,旨在帮助运维人员快速定位问题并提升系统的整体运行效率。通过实际案例分析,我们将展示如何利用系统资源监控、日志分析和性能调优等手段,有效预防和解决服务器性能瓶颈。
|
7月前
|
Rust 监控 算法
Rust中的系统性能监控与调优:提升应用效能的关键实践
随着Rust在系统级编程中的广泛应用,性能监控与调优变得尤为关键。本文介绍了在Rust中实施系统性能监控的方法,探讨了Rust应用的性能瓶颈,并提供了调优策略与最佳实践,旨在帮助开发者更有效地提升Rust应用的性能。
|
Prometheus 监控 Kubernetes
k8s中部署prometheus监控告警系统-prometheus系列文章第一篇
k8s中部署prometheus监控告警系统-prometheus系列文章第一篇
|
存储 数据采集 Prometheus
APM - Prometheus监控系统初探
APM - Prometheus监控系统初探
352 1