Sysdig 是一个超级系统工具,比 strace、tcpdump、lsof 加起来还强大。可用来捕获系统状态信息,保存数据并进行过滤和分析。使用 Lua 开发,提供命令行接口以及强大的交互界面。

使用示例:

网络

  • 查看占用网络带宽最多的进程

    sysdig -c topprocs_net

  • 显示主机192.168.0.1的网络传输数据

    as binary:
    sysdig -s2000 -X -c echo_fds fd.cip=192.168.0.1
    as ASCII:
    sysdig -s2000 -A -c echo_fds fd.cip=192.168.0.1

  • 查看连接最多的服务器端口

    in terms of established connections:
    sysdig -c fdcount_by fd.sport "evt.type=accept"
    in terms of total bytes:
    sysdig -c fdbytes_by fd.sport

  • 查看客户端连接最多的ip

    in terms of established connections
    sysdig -c fdcount_by fd.cip "evt.type=accept"
    in terms of total bytes
    sysdig -c fdbytes_by fd.cip

  • 列出所有不是访问apache服务的访问连接

    sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd"

容器

  • 查看机器上运行的容器列表及其资源使用情况

    sudo csysdig -vcontainers

  • 查看容器上下文的进程列表

    sudo csysdig -pc

  • 查看运行在wordpress1容器里CPU的使用率

    sudo sysdig -pc -c topprocs_cpu container.name=wordpress1

  • 查看运行在wordpress1容器里网络带宽的使用率

    sudo sysdig -pc -c topprocs_net container.name=wordpress1

  • 查看在wordpress1容器里使用网络带宽最多的进程

    sudo sysdig -pc -c topprocs_net container.name=wordpress1

  • 查看在wordpress1 容器里占用 I/O 字节最多的文件

    sudo sysdig -pc -c topfiles_bytes container.name=wordpress1

  • 查看在wordpress1 容器里网络连接的排名情况

    sudo sysdig -pc -c topconns container.name=wordpress1

  • 显示wordpress1容器里所有命令执行的情况

    sudo sysdig -pc -c spy_users container.name=wordpress1

应用

  • 查看机器所有的HTTP请求

    sudo sysdig -s 2000 -A -c echo_fds fd.port=80 and evt.buffer contains GET

  • 查看机器所有的SQL select查询

    sudo sysdig -s 2000 -A -c echo_fds evt.buffer contains SELECT

  • See queries made via apache to an external MySQL server happening in real time

    sysdig -s 2000 -A -c echo_fds fd.sip=192.168.30.5 and proc.name=apache2 and evt.buffer contains SELECT

硬盘 I/O

  • 查看使用硬盘带宽最多的进程

    sysdig -c topprocs_file

  • 列出使用大量文件描述符的进程

    sysdig -c fdcount_by proc.name "fd.type=file"

  • See the top files in terms of read+write bytes

    sysdig -c topfiles_bytes

  • Print the top files that apache has been reading from or writing to

    sysdig -c topfiles_bytes proc.name=httpd

  • Basic opensnoop: snoop file opens as they occur

    sysdig -p "%12user.name %6proc.pid %12proc.name %3fd.num %fd.typechar %fd.name" evt.type=open

  • See the top directories in terms of R+W disk activity

    sysdig -c fdbytes_by fd.directory "fd.type=file"

  • See the top files in terms of R+W disk activity in the /tmp directory

    sysdig -c fdbytes_by fd.filename "fd.directory=/tmp/"

  • Observe the I/O activity on all the files named 'passwd'

    sysdig -A -c echo_fds "fd.filename=passwd"

  • Display I/O activity by FD type

    sysdig -c fdbytes_by fd.type

进程和CPU使用率

  • See the top processes in terms of CPU usage

    sysdig -c topprocs_cpu

  • See the top processes for CPU 0

    sysdig -c topprocs_cpu evt.cpu=0

  • Observe the standard output of a process

    sysdig -s4096 -A -c stdout proc.name=cat

性能和错误

  • See the files where most time has been spent

    sysdig -c topfiles_time

  • See the files where apache spent most time

    sysdig -c topfiles_time proc.name=httpd

  • See the top processes in terms of I/O errors

    sysdig -c topprocs_errors

  • See the top files in terms of I/O errors

    sysdig -c topfiles_errors

  • See all the failed disk I/O calls

    sysdig fd.type=file and evt.failed=true

  • See all the failed file opens by httpd

    sysdig "proc.name=httpd and evt.type=open and evt.failed=true"

  • See the system calls where most time has been spent

    sysdig -c topscalls_time

  • See the top system calls returning errors

    sysdig -c topscalls "evt.failed=true"

  • snoop failed file opens as they occur

    sysdig -p "%12user.name %6proc.pid %12proc.name %3fd.num %fd.typechar %fd.name" evt.type=open and evt.failed=true

  • Print the file I/O calls that have a latency greater than 1ms:

    sysdig -c fileslower 1

安全

    • Show the directories that the user "root" visits

      sysdig -p"%evt.arg.path" "evt.type=chdir and user.name=root"

    • Observe ssh activity

      sysdig -A -c echo_fds fd.name=/dev/ptmx and proc.name=sshd

    • Show every file open that happens in /etc

      sysdig evt.type=open and fd.name contains /etc

    • Show the ID of all the login shells that have launched the "tar" command

      sysdig -r file.scap -c list_login_shells tar

    • Show all the commands executed by the login shell with the given ID

      sysdig -r trace.scap.gz -c spy_users proc.loginshellid=5459

Linux工具- Sysdig的更多相关文章

  1. 第2章 Linux系统安装(3)_SSH连接Linux工具:SecureCRT和WinSCP

    4. SSH连接Linux工具 4.1 Linux网卡配置 (1)临时配置: ifconfig eth0 192.168.32.100 //给eth0网卡指定IP,写在ROM里的,关机会丢失. (2) ...

  2. 发布《Linux工具快速教程》

    发布<Linux工具快速教程> 阶段性的完成了这本书开源书籍,发布出来给有需要的朋友,同时也欢迎更多的朋友加入进来,完善这本书: 本书Github地址:https://github.com ...

  3. Linux工具XFTP、Xshell(centos配置java环境 工具篇 总结一)

    ♣Xmanager5是什么? ♣安装XFTP ♣安装Xshell 1.Xmanager5(官网:https://www.netsarang.com/download/software.html)是全新 ...

  4. Linux工具参考篇(网摘)

    Linux工具参考篇 原文出处:[Linux Tools Quick Tutorial] 1. gdb 调试利器 2. ldd 查看程序依赖库 3. lsof 一切皆文件 4. ps 进程查看器 5. ...

  5. linux 工具学习网站

    推荐一个很不错的linux工具学习网站; 对于一个开发人员来说,我觉得掌握这些工具对于基于linux的应用开发来说事半功倍. http://linuxtools-rst.readthedocs.io/ ...

  6. Kali Linux 工具清单

    Kali Linux 工具清单 Information Gathering acccheck ace-voip Amap Automater bing-ip2hosts braa CaseFile C ...

  7. Linux工具[转]

    ref: https://github.com/linw7/Skill-Tree/blob/master/Linux%E5%B7%A5%E5%85%B7.md Linux工具 Linux下还是有很多超 ...

  8. 推荐两款远程管理Linux工具(基于Windows系统)

    推荐两款远程管理Linux工具(基于Windows系统) 1.Xshell 百度百科:Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows ...

  9. Linux工具快速教程

    看到一linux中常用工具使用教程,非常好.猛击下面的地址 github:https://github.com/me115/linuxtools_rst 在线文档:http://linuxtools- ...

随机推荐

  1. cefsharp wpf

    github 安装 PM> Install-Package CefSharp.Wpf 解决方案->属性->配置属性->活动解决方案平台-新建-x64 在需要使用的窗体上引用xm ...

  2. DPDK 网络加速在 NFV 中的应用

    目录 文章目录 目录 前文列表 传统内核协议栈的数据转发性能瓶颈是什么? DPDK DPDK 基本技术 DPDK 架构 DPDK 核心组件 应用 NUMA 亲和性技术减少跨 NUMA 内存访问 应用 ...

  3. Netflix Zuul

    Zuul 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架.Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门. ApiGateway服务器 1.pom &l ...

  4. CentOS7出现Unit iptables.service could not be found

    CentOS7默认的防火墙不是iptables,而是firewalle. 出现此情况可能是iptables防火墙未安装. #停止firewalld服务 systemctl stop firewalld ...

  5. Can't initialize physical volume "/dev/sdb" of volume group "cinder-volumes" without -ff /dev/sdb: physical volume not initialized.

    原因:无法初始化物理量,之前创建的cinder-volumes没有卸载 方法一: [root@storage cinder]# lsblk NAME MAJ:MIN RM SIZE RO TYPE M ...

  6. vim在文件末尾增加内容

    1.跳到文本的最后一行:按“G”,即“shift+g” 2.跳到最后一行的最后一个字符 : 先重复1的操作即按“G”,之后按“$”键,即“shift+4”.3  o:在当前行下面插入一个新行O:在当前 ...

  7. React Native安卓代码混淆和打包

    一上午就整了个React Native的打包,中间还遇到各种问题,这里还是记录下吧: 文档链接: http://reactnative.cn/docs/0.45/signed-apk-android. ...

  8. LCA -cogs2098 [SYOI 2015] Asm.Def的病毒

    题目链接:http://cogs.pro:8081/cogs/problem/problem.php?pid=vQXmxVaPU [题目描述] “这就是我们最新研制的,世界上第一种可持久化动态计算机病 ...

  9. kube-metric在kubernetes上的部署

    1.拿包 wgethttps://github.com/kubernetes/kube-state-metrics/archive/v1.7.2.tar.gz 2.tar -zxf  v1.7.2.t ...

  10. hbase数据导出和恢复 设置双master + 查看hbase表占用磁盘大小

    1.备份TETST111hbase org.apache.hadoop.hbase.mapreduce.Export TEST111 /do1/hh2.drop 掉test111表  -- 只能dro ...