Collectl:高级 Linux 性能报告工具

yanding 2023-07-16 184

Linux系统管理员的主要工作是确保他所运行的系统处于非常良好的状态。Linux系统管理员有很多工具可以帮助监视和显示系统中的进程,例如htop,但这些工具都无法与collectl竞争。



collectl 是一个非常有用、功能丰富的命令行实用程序,可用于收集描述系统当前状态的性能数据。与大多数其他监控工具不同,collectl并不专注于少数配置列表,相反,它可以从许多不同类型的系统资源中收集数据,例如cpu,磁盘,内存,网络,套接字,tcp,inodes,关于infiniband,数组,内存、nfs、函数、二次曲面、slabs 和 buddyinfo。


使用collectl 的一个非常好的事情是它还可以发挥纯粹为特定目的而构建的实用程序的作用,例如iotop 和许多其他实用程序。哪些功能使 colleclt 成为有用的工具?


以下是collectl 命令行实用程序对你们来说最重要的一些功能。


它可以协同作用,作为恶魔,或两者兼而有之。

它可以以多种形式显示结果。

它能够监控几乎任何子系统。

它可以发挥许多其他工具的作用,如 ps、top、iotop 和 vmstat。

它具有记录和播放捕获的数据的能力。

它可以导出不同文件格式的数据。(如果您想使用外部工具分析数据,这尤其有用)。

它可以作为服务运行来监视远程设备或整个服务器组。

它可以在终端中显示数据,并写入文件或套接字。

如何在Linux中安装collectl


Collectl 实用程序在所有 Linux 发行版上运行,它唯一需要工作的是 Perl,因此请确保在安装 Collectl 之前安装了 Perl(它较早出现)。


以下命令可用于在基于 Debian 的发行版(例如 Ubuntu 和 Linux Mint)中安装 Collectl 实用程序。


$sudo apt-get installcollectl

如果您运行的是基于 RedHat 的发行版,例如 Rocky Linux 或 AlmaLinux,或任何其他 Linux 发行版,您可以轻松下载、解压并运行 tarball,如图所示


# wget https://sourceforge.net/projects/collectl/files/latest/download -Ocollectl.tar.gz

# tar -xvfcollectl.tar.gz

#cd 收集-*

# 。/安装

在Linux中使用Collectl监控工具

安装完collectl工具后,即使没有任何选项,您也可以轻松地从终端运行它。以下命令将以非常简短、人类可读的格式显示有关 cpu、磁盘和网络统计信息的信息。


# 收集


正如你们从终端屏幕上显示的上述输出中看到的那样,在命令输出中使用系统指标值非常容易,因为它显示在一行上。


当collectl实用程序在没有任何选项的情况下运行时,它会显示有关以下子系统的信息:


中央处理器

磁盘

网站

注意:在我们的例子中,子系统是任何类型的可测量的系统属性。


您还可以通过将命令与--all选项结合使用来显示除平板之外的所有子系统的统计信息,如下所示。


#collectl——全部


但是,如何借助实用程序监控 cpu 使用情况呢?必须使用选择-s来确定要收集或播放哪个子系统信息。



例如,可以使用以下命令来监视 cpu 使用情况摘要。


# 收集-sc


当您将该命令与“scdn”结合使用时会发生什么?学习如何使用命令行工具的最佳方法是尽可能多地练习,因此在终端中执行以下命令,看看接下来会发生什么。


#collectl-scdn


你可以很容易理解第一个选项是“cdn”,它代表cpu、磁盘和网络数据。该命令的输出类似于“collectl -scn”的输出。


要收集有关内存的信息,请使用以下命令。


#collectl-sm


如果您想获取有关内存使用情况、可用内存以及影响系统性能的其他重要因素的一些详细信息,上述输出非常有用。


tcp 上的一些数据怎么样?使用以下命令。


# 收集-st


获得一些经验后,您可以轻松组合选项以获得您想要的结果。例如,您可以组合“ t”表示 tcp,“ c”表示 cpu。以下命令执行此操作。


# 收集-stc


我们人类很难记住所有可用的选项,因此我发布了该工具支持的子系统的简短列表。


b– 好友信息(内存分配)

C- 中央处理器

d– 磁盘

的名称

f– NFS V3 数据

i– 索引节点和文件系统

j– 干扰因素

l- 光

光的亮度

m- 提醒

n– 网站

s– 插座

t– TCP

x– 互相沟通

y– 板(系统存储)

对于系统管理员或 Linux 用户来说非常重要的信息是收集的磁盘使用数据。以下命令将帮助您监控磁盘使用情况。


# 收集-sd



您还可以使用“ -sD”选项来合并各个磁盘上的数据,但您应该注意,不会报告整个磁盘上的数据。


#collectl-sD


您还可以使用其他数据来收集详细信息。以下是子系统的详细列表。


C- 中央处理器

D– 磁盘

的名称

E– 环境数据(风扇、功率、温度),通过 ipmitool

F– NFS 数据

J– 干扰因素

L– Lustre OST 信息或客户端文件系统信息

N– 网站

T– 65 个 TCP 编号仅以绘图格式提供

X– 互相沟通

Y– 板(系统存储)

Z– 运营

Collectl 实用程序中有许多选项,但没有足够的时间和空间在一篇文章中涵盖所有选项。然而,值得一提的是,它展示了如何使用 top 和 ps 等实用程序。


让collectl作为top实用程序运行非常容易,只需在终端中运行以下命令,您就会在Linux系统中运行时在top工具中看到类似的输出。


#collectl--顶部


最后但并非最不重要的一点是,要将collectl实用程序用作ps工具,请在终端中运行以下命令。您将获得与在终端中运行“ps”命令时相同的有关系统中进程的信息。


# 收集 -c1 -sZ -i:1


我确信许多 Linux 系统管理员都会喜欢这个collectl 工具,并在充分利用它的潜力时感受到它的强大功能。如果您想进一步了解 Collectl,请查看其手册页并继续学习。


只需在终端中输入以下命令并开始阅读。

言鼎科技

The End