不是所有的Linux工具都会让人惊叹,但这个绝对让你叫绝

今天我要向大家介绍一款非常强大的系统诊断和监控工具——sysdig。它能替代topiftoplsofstrace等工具,让你的工作更加高效。下面让我举几个应用场景,让你亲眼见证它的强大!

什么是sysdig

sysdig是一款开源的系统诊断和监控工具,Sysdig可以看做是 strace + tcpdump + lsof + htop + iftop 以及其他系统分析工具的合集 。能够实时捕获系统的运行状态并以可视化的方式展示。通过sysdig,用户可以深入了解系统的各项指标、进程活动、网络流量等情况,从而更好地进行故障排查、性能优化和安全监控。

安装sysdig

首先,我们需要安装sysdig工具。sysdig提供了多种安装方式,包括源代码编译安装和各种包管理器安装。在大多数Linux发行版上,您可以通过包管理器轻松安装sysdig。例如,在Ubuntu系统上,可以使用以下命令安装:

sudo apt-get  -y install sysdig

安装成功后,通过下面命令查看对应的版本信息

controlplane $ sysdig --version
sysdig version 0.26.4

使用场景

场景一:跟踪进程的系统调用

跟踪进程的系统调用是故障排查中常用的手段,可以帮助您了解应用程序在执行过程中的具体行为。举例来说,假设一个应用程序在处理某个请求时出现了失败,通过跟踪系统调用,您可以得知是在哪个环节出现了问题,或者是因为缺少了哪个依赖库。现在假设您有一台运行Nginx服务的服务器,想要查看该Nginx服务的系统调用,您可以使用以下命令:

sysdig proc.name=nginx
或
sysdig proc.pid = 进程号

执行完上述命令后,它会实时监听Nginx的进程,如下图
监听Nginx
我们在另外一个终端向这个nginx发送一个HTTP请求,这时,sysdig就会捕抓到请求Nginx的所有数据。如下图:
监听Nginx的结果

场景二:系统性能分析

这也是sysdig的拿手好戏之一。比如,要查看CPU使用最高的进程,您可以使用以下命令:

sysdig -c  topprocs_cpu

执行上述命令后,如下图:
监控CPU情况
这将列出使用CPU最高的进程,可以清晰的看出当前系统中哪些进程占用CPU最高,一目了然,非常直观

查看网络使用最高的进程,您可以执行以下命令:

sysdig -c topprocs_net

执行完上述命令后,将列出使用网络最高的进程,可以看出哪些进程使用网络流量比较大。如下图:

要查看读写硬盘最高的进程,您可以执行以下命令:

sysdig -c  topprocs_file

执行上述命令后,如下图:

这里会帮你列出读写硬盘最高的进程,假设你的系统硬盘读写慢,你想知道是那个进程,占用的磁盘IO比较大,就可以通过这个命令得出来,哪个进程现在占用大量的磁盘IO,从而造成硬盘的一个瓶颈。

查看网络链接,您可以执行以下命令:

sysdig -c netstat

执行上述命令后,如下图:

这里面列出的,与我们直接使用netstat命令列出的内容类似,包括监听,网络链接等等。

查看进程列表,您可以执行以下命令:

sysdig -c ps

执行这个命令后,帮你列出当前系统中所有的进程,包括进程ID以及它的文件描述符的限制,如下图:

查看系统打开的文件描述,您可以执行以下命令:

sysdig -c  lsof

执行完这个命令后,将列出系统中打开的所有文件描述符。包括进程PID以及文件,都能看到。如下图:

场景三: 查看某个目录被哪些进程打开

想要了解某个目录被哪些进程打开,可以使用以下命令:

sysdig fd.name contains /etc

它将会过滤出打开文件描述符中,包含etc的路径,etc目录下的所有的打开文件都能在这里看到。如下图:

写到最后

sysdig是一款强大的系统诊断和监控工具,结合系统调用跟踪和抓包功能,能够实时捕获系统运行状态并以可视化方式展示,提供了丰富的命令行工具和高级功能,可应用于性能优化、故障排查、安全监控等多个场景,是系统管理员和运维工程师的得力助手。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/512334.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

排序算法-归并排序

Leetcode链接:. - 力扣(LeetCode) 归并:将原始数组划分为若干个子数组,然后将这些子数组分别排序,最后再将已排序的子数组合并成一个有序的数组。是一种分治思想 思路: 1.分 2.治 3.怎么治 …

Matlab实验:FIR数字滤波器设计

01.代码内容及原理 02.代码所有效果图 获取代码请关注MATLAB科研小白的个人公众号(即文章下方二维码),并回复MATLAB实验;本公众号致力于解决找代码难,写代码怵。各位有什么急需的代码,欢迎后台留言~不定时更…

从零开始,构建智慧企业:人事管理软件新升级全攻略

本文从智能化人事管理的六大核心要素探讨如何打造一个适应现代企业需求的智能化人事管理系统,并介绍几款市场上表现优秀的人事管理软件。 随着我国经济的发展,企业全球化是大势所趋,难免会出现跨国员工数量增加、办公地点分散、跨部门协作等…

超图新建三维数据集继续学习

1 新建三维数据集 之前操作过新建三维数据集,还不熟悉,继续熟悉; 现在有一个文件型的数据源,名为swtest1;它前面小图标上有UDX三个字母,表明这是一个UDX类型的数据源;在此数据源上右击&#x…

vs2022 开始自己的第一个Python程序

这是针对于vs2022安装和使用教程(详细)创建Python项目的简单示例,旨在示范从项目搭建到程序运行的简单流程,代码就是打印Hello World,适合初次使用vs2022的用户~ 1.以Python为例,下拉到Python应用程序&…

c#仿ppt案例

画曲线 namespace ppt2024 {public partial class Form1 : Form{public Form1(){InitializeComponent();}//存放所有点的位置信息List<Point> lstPosition new List<Point>();//控制开始画的时机bool isDrawing false;//鼠标点击开始画private void Form1_MouseD…

一次普通的漏洞挖掘思路分享

No.0 前言 一名web安全小白&#xff0c;自己仅学了一点思路&#xff0c;直接实战&#xff0c;运气不错&#xff0c;碰到了管理员弱口令&#xff0c;进入后台后&#xff0c;继续测试自己学会的思路挖掘深一点的漏洞&#xff0c;这里与各位分享一下&#xff0c;如果有更多的思路…

01 - 半加器 异或门

---- 整理自B站UP主 踌躇月光 的视频 1. 半加器 ABSC0000011010101101 S A ‾ B A B ‾ C A B \begin{aligned} S & \overline{A}B A\overline{B} \\ C & AB \end{aligned} SC​ABABAB​ 2. 异或门 S A ‾ B A B ‾ \begin{aligned} S & \overline{A}B A\o…

如何评估编码器性能优劣?全方位检测方法与常见故障解决方案

编码器是一种电子或机械装置&#xff0c;其主要功能是将物理量&#xff08;如角位移、直线位移、速度、压力、温度等&#xff09;转换为相应的电信号&#xff0c;或者是将数据、信号或信息进行格式转换和编码&#xff0c;使其能够适应特定的通讯协议、传输介质或存储要求。 在…

当面试官问你插入排序算法,你敢说自己会吗?

算法学习的重要性 在程序员的世界里&#xff0c;算法就如同一座桥梁&#xff0c;连接着问题与解决方案&#xff0c;是实现优秀程序的关键。 掌握算法&#xff0c;就能够在面对各种问题时&#xff0c;找到最合适的解决方法&#xff0c;以最少的时间和空间&#xff0c;实现最优的…

力扣2684---矩阵中移动的最大次数(DFS,Java、中等题)

目录 题目描述&#xff1a; 思路描述&#xff1a; 代码&#xff1a; 纯递归&#xff1a; 带有记忆化搜索的递归&#xff1a; 题目描述&#xff1a; 给你一个下标从 0 开始、大小为 m x n 的矩阵 grid &#xff0c;矩阵由若干 正 整数组成。 你可以从矩阵第一列中的 任一 单…

环信IM集成教程——Web端UIKit快速集成与消息发送

写在前面&#xff1a; 千呼万唤始出来&#xff0c;环信Web端终于出UIKit了&#xff01;&#x1f389;&#x1f389;&#x1f389; 文档地址&#xff1a;https://doc.easemob.com/uikit/chatuikit/web/chatuikit_overview.html 环信单群聊 UIKit 是基于环信即时通讯云 IM SDK 开…

蓝桥杯每日不知道多少题之昂贵的聘礼

制作不易望点赞收藏加关注~~~&#xff0c;以便不时之需 题目连接&#xff1a;903. 昂贵的聘礼 - AcWing题库 解题思路&#xff1a;虚拟一个物品0&#xff0c;然后反向建边&#xff0c;边权为物品0到物品i所花费的价格&#xff0c;以及物品i换物品j所省下的钱&#xff0c;然后…

【Spring】SpringBoot整合ShardingSphere并实现多线程分批插入10000条数据(进行分库分表操作)。

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 一、ShardingSphere简介 ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈&#xff0c;它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar&#xff08;计划中&#xff09;这3款相互独立的产品组成…

强化学习笔记系列入门【0】

引言: 最近在学习西湖大学赵世钰老师的强化学习课程,一直觉得学习一定是一个不仅有输入还需要及时给出自己输出的一个过程,但在中国的大学或者研究生课堂,这一部分是相当缺失的,氛围经常性的很差。其实,课堂,我觉得就很有必要去做一些翻转课堂之类的东西,去打破现在这种…

【算法刷题day14】Leetcode:144.二叉树的前序遍历、94.二叉树的中序遍历、145.二叉树的后序遍历

文章目录 二叉树递归遍历解题思路代码总结 二叉树的迭代遍历解题思路代码总结 二叉树的统一迭代法解题思路代码总结 草稿图网站 java的Deque 二叉树递归遍历 题目&#xff1a; 144.二叉树的前序遍历 94.二叉树的中序遍历 145.二叉树的后序遍历 解析&#xff1a;代码随想录解析…

黄金票据复现

一、黄金票据攻击介绍 黄金票据攻击是网络安全领域中一种重要的渗透攻击手段。它利用Kerberos身份认证协议中的漏洞&#xff0c;允许攻击者伪造域控krbtgt用户的TGT&#xff08;Ticket-Granting Ticket&#xff09;。一旦攻击者成功伪造了TGT&#xff0c;他们就可以访问网络中…

千山至臻蜜密40°C的蜂蜜质量怎么样?

千山至臻蜜密40℃是经中国蜂产品协会认证的全国五星级蜂蜜品牌&#xff0c;中国蜂产品协会是全国最高最权威的认证机构&#xff0c;产品质量是毋庸置疑的。 千山至臻中蜂百花蜜对产品质量的管控可以用非常严苛来形容。 一是蜂场选择在方圆五公里的无人区&#xff08;中蜂的采…

hadoop 高可用(HA)、HDFS HA、Yarn HA

目录 hadoop 高可用(HA) HDFS高可用 HDFS高可用架构 QJM 主备切换&#xff1a; Yarn高可用 hadoop 高可用(HA) HDFS高可用 HDFS高可用架构 QJM 主备切换&#xff1a; Yarn高可用

MySQL进阶-----SQL提示与覆盖索引

目录 前言 一、SQL提示 1.数据准备 2. SQL的自我选择 3.SQL提示 二、覆盖索引 前言 MySQL进阶篇的索引部分基本上要结束了&#xff0c;这里就剩下SQL提示、覆盖索引、前缀索引以及单例联合索引的内容。那本期的话我们就先讲解SQL提示和覆盖索引先&#xff0c;剩下的内容就…