Guider是一个免费且开源的,功能强大的全系统性能分析工具,主要以Python for Linux 操作系统编写。

它旨在衡量系统资源使用量并跟踪系统行为,从而使其可以有效分析系统性能问题或进行性能调整。

它显示了大量有关 CPU,内存,每个线程的磁盘使用率,进程,系统功能(用户/内核)的信息。 因此可以非常简单地了解导致系统性能异常或改善整体系统性能的问题。

系统要求

  • Linux 内核(> = 3.0)
  • Python(> = 2.7)
  • 内核缓冲区大小为 40960。

在本文中,我们将向您展示如何从源代码安装 guider,并使用它来分析和提高 Linux 操作系统的整体性能。

如何构建和安装 Guider – Linux 性能分析器

要在 Linux 上安装Guider ,首先如图所示从 github 克隆 guider 存储库。

  1. $ git clone https://github.com/iipeace/guider.git
  2. $ cd guider
  3. $ guider.py [Run without installing]

您可以运行guider.py而不安装它。 或者,您可以运行下面的命令来构建和安装它,如图所示。

  1. $ make
  2. $ sudo make install

如果您可以在系统中使用PIP ,请使用以下命令进行安装。

  1. $sudo pip install --pre guider

如何使用 Guider 分析 Linux 系统的性能

默认情况下,guider 应该为其操作设置缓冲区大小。 但是,如果它没有这样做,并且一旦你调用它就会显示一个错误,你可以用这个命令检查你的缓冲区大小。

  1. $ sudo cat /sys/kernel/debug/tracing/buffer_size_kb

如果该值小于40960 ,则将其设置为所需值,如下所示。

  1. $ echo 40960 | sudo tee /sys/kernel/debug/tracing/buffer_size_kb

设置 Linux 内核缓冲区大小

您可以使用以下语法在线程,函数,顶层,文件和系统模式中调用引导程序。

  1. $ guider [ mode | file ] [options]

与大多数基于 Linux 系统性能分析工具的命令行一样,您需要更宽的屏幕才能清楚地查看引导程序的输出。

在线程模式下执行 CPU 使用率分析

以下命令将在线程模式下开始准确的跟踪(按[Ctrl+c]终止跟踪过程)。 一旦你终止了这个过程,它会保存数据并开始分析过程,然后在那里显示分析报告。

  1. $ sudo guider record

线程模式下的 CPU 跟踪

分析报告包括一般系统信息,操作系统信息,CPU 信息,内存信息,磁盘信息以及寻呼机末尾的线程信息。 只需使用UpDown箭头UpDown滚动寻呼机。

Linux 系统信息

在顶层模式下执行实时 Linux 监控

以下命令将实时显示 Linux 进程的资源使用情况。

  1. $ sudo guider.py top

实时 Linux 进程监视

您可以使用-i开关设置显示输出的时间间隔,如图所示。

  1. $ sudo guider top -i 2

要监视有关资源使用情况的所有信息,请使用-a标志。

  1. $ sudo guider top -a

使用 PID 分析单个 Linux 进程

首先使用pidof或 ps 命令获取进程 ID。

  1. $ pidof apache2
  2. OR
  3. $ ps -e | grep apache2

然后使用以下命令分析其资源使用情况,该命令可以实时输出 CPU 周期,指令编号,IPC,故障,缓存缺失,分支丢失等等。 -g开关设置一个过滤器,在这种情况下是过程 ID。

  1. $ sudo guider top -eP -g 1913

监视 Apache 进程使用情况

保存指南输出到文件

您还可以将跟踪数据或任何输出保存到文件中以供日后分析。 以下命令将跟踪数据保存在当前目录下名为guider.dat的文件中(默认情况下),您也可以指定不同的位置。

  1. $ sudo guider -s .

将当前目录中名为guider.out的文件(默认情况下)保存为其他任何输出。

  1. $ sudo guider top -o .

然后你可以通过 cat 命令来检查这些文件。

  1. $ cat guider.dat
  2. $ cat guider.out

我们不能用尽所有可能的选择,因为选项列表是无止境的。 您可以从 guider 帮助页面查看所有选项和更多用法示例。

  1. $ guider -h

指南 Github 存储库: https : //github.com/iipeace/guider

结论

Guider是面向未来的全系统性能分析工具。 它适用于 Linux 专家。

guider – 全系统Linux性能分析器的更多相关文章

  1. 【转载,整理】Linux性能监控

    一. 比较全的linux性能检测网站 1. 很好的网站,原文:http://os.51cto.com/art/201402/430050.htm 监测 cpu.内存.网络.IO等命令及工具   2.  ...

  2. 【转载】Linux系统与性能监控

    原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...

  3. Linux系统与性能监控

    原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...

  4. (转)超全整理!Linux性能分析工具汇总合集

    超全整理!Linux性能分析工具汇总合集 原文:http://rdc.hundsun.com/portal/article/731.html 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望, ...

  5. Linux性能优化 第二章 性能工具:系统CPU

    2.1 CPU性能统计信息 2.1.1运行队列统计 在Linux中,一个进程要么是可运行的,要么是阻塞的(正在等待一个事件的完成).阻塞进程可能在等待从I/O设备来的数据,或者是系统调用的结果如果一个 ...

  6. Linux系统和性能监控之CPU篇

    Linux系统和性能监控之CPU篇 性能优化就是找到系统处理中的瓶颈以及去除这些的过程.本文由sanotes.net站长tonnyom在2009年8月翻译自Linux System and Perfo ...

  7. 超全整理!Linux性能分析工具汇总合集

    转自:http://rdc.hundsun.com/portal/article/731.html?ref=myread 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章. ...

  8. Linux的系统级性能剖析工具-perf

    一直在找个靠谱且易用的性能分析工具,perf 貌似是很符合要求的,先给出阿里整理的几篇文档: Linux的系统级性能剖析工具-perf-1.pdf Linux的系统级性能剖析工具-perf-2.pdf ...

  9. 【No.1】监控Linux性能25个命令行工具

    如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?通过以下命令或者工具可以快速定位 top vmstat lsof tcpdump netsta ...

随机推荐

  1. 轻量级web富文本框——wangEditor使用手册(1)——基本应用 demo

    最新版wangEditor: 配置说明:http://www.wangeditor.com/doc.html demo演示:http://www.wangeditor.com/wangEditor/d ...

  2. maven install 打包 报错 Cannot run program "gpg.exe": CreateProcess error

    打包报错, mvn install后加上参数-Dgpg.skip,例如:mvn install -Dgpg.skip   即可解决. 我们也可以去掉 这个 插件   <plugin>    ...

  3. Tomcat8源码编译及导入Eclipse中研究

    最近因为需求需要修改Tomcat中的某些功能,无奈只能研究那部分源码然后稍作修改. 目前Tomcat最新版是8.0,下载了源码包,编译并导入Eclipse中研究比较方便. 1. Tomcat8源码编译 ...

  4. SpringMVC之类型转换

    在数据绑定上,SpringMVC提供了到各种基本类型的转换,由前端到后台时,SpringMVC将字符串参数自动转换为各种基本类型.而对于其他,则需要自己编写代码进行转换.本随笔以转换时间类型为例,使用 ...

  5. 谈谈Windows Wow64

    欢迎转载,转载请注明出处:http://www.cnblogs.com/lanrenxinxin/p/4977488.html 本文是<深入理解Windows操作系统 (第六版) >关于6 ...

  6. 第一次项目上Linux服务器(五:CentOS7下Mysql数据库的安装与配置(转))

    好像在CentOS 7系统中,默认安装的mysql是它的分支mariadb.所以不能像CentOS-6.3那样安装,如下: [root@izwz ~]# yum -y install mysql my ...

  7. Netty 接受请求过程源码分析 (基于4.1.23)

    前言 在前文中,我们分析了服务器是如何启动的.而服务器启动后肯定是要接受客户端请求并返回客户端想要的信息的,否则要你服务器干啥子呢?所以,我们今天就分析分析 Netty 在启动之后是如何接受客户端请求 ...

  8. Docker 为 ASP.NET Core Web 应用程序生成 Docker 映像,创建并运行多个容器

    1.为 ASP.NET Core 应用程序生成 Docker 映像 下载这个事例项目:https://github.com/dotnet/dotnet-docker/tree/master/sampl ...

  9. SQL Server无法打开物理文件,操作系统错误 5:"5(拒绝访问。)的解决办法

    在新装的系统中使用SQL Server附加以前的数据库的时候可能会遇到“无法打开物理文件,拒绝访问”的错误,如下图: 解决方法为使用windows验证登录,或者更改SQL Server内置账户类型为L ...

  10. LDA(线性判别分析,Python实现)

    源代码: #-*- coding: UTF-8 -*- from numpy import * import numpy def lda(c1,c2): #c1 第一类样本,每行是一个样本 #c2 第 ...