超级系统工具 Sysdig

GPLv2
Lua 查看源码»
Linux
2015-10-30
红薯

疫情之下,程序员如何转型?共享数字化转型加速度,就在微软在线技术峰会>>>

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

的码云指数为
超过 的项目
加载中

评论(6)

htfy96
htfy96
这个工具啊……让我很excited! #Sysdig#
Xtay
Xtay
mark #Sysdig#
子弹兄
子弹兄
确实不错 #Sysdig#
Altman
Altman
使用lua开发?确定不是c开发?。。。 #Sysdig#
叫我刀刀
叫我刀刀
安装失败。。。 #Sysdig#
oreak
oreak
我就没看到lua的影子 #Sysdig#

sysdig 0.7.1发布,超级系统工具

sysdig 0.7.1发布,此版本更新内容如下: Bug 修复: Fix sysdig-probe compilation for kernel < 3.4.0 Fix compilation on OSX 下载页面:0.7.1 Sysdig 是一个超级系统工具,比 strace、t...

2016/01/26 07:48

sysdig 0.7.0 发布,超级系统工具

sysdig 0.7.0 发布,更新如下: Bug fixes Fix sysdig-probe for kernel 4.4 Fix a remotely possible deadlock during ioctl calls Fix Kubernetes support when data returned from the A...

2016/01/25 07:51

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

2018 Docker 用户报告 - Sysdig Edition

This article is part of an Virtualization Technology tutorial series. Make sure to check out my other articles as well: 2018 年度 Docker 用户报告 - Sysdig Edition Cyber-Securit...

2018/06/13 09:58
73
0
一张表搞懂各种 Docker 监控方案 - 每天5分钟玩转 Docker 容器技术(86)

本文从五个维度对比 ps/top/stats、Sysdig、Weave Scope、cAdvisor 和 Prometheus。

2017/10/27 07:44
189
0
Docker 监控之 SaaS 解决方案

上一篇文章中,我们了解了开源的 Docker 监控方案,本篇听听斌哥介绍 Docker 监控的 SaaS 解决方案!!

2016/05/10 15:42
118
5
Jenkins World 贡献者峰会及专家答疑展位

本文首发于:Jenkins 中文社区 原文链接 作者:Marky Jackson 译者:shunw Jenkins World 贡献者峰会及专家答疑展位 本文为 Jenkins World 贡献者峰会活动期间的记录 Jenkins 15周岁啦!Jen...

2019/09/17 07:56
96
0
mysql工具链--devops

工欲善其事必先利其器

2016/06/03 14:02
666
0
Kubernetes 1.12全新发布!新功能亮点解析

Kubernetes1.12已于今日全新发布!Kubelet证书轮换、资源配额优先级、挂载命名空间、对Azure的增强支持等10大亮点功能,本文为你一一解读! Kubernetes 1.12已于今日全新发布。距离上一次1.1...

2018/09/29 22:43
112
0
Linux 命令行网络监控工具

转自:http://blog.sina.com.cn/s/blog_14d68bfac0102vux9.html 对任何规模的业务来说,网络监控工具都是一个重要的功能。网络监控的目标可能千差万别。比如,监控活动的目标可以是保证长期的...

2015/07/13 18:25
412
0
动态追踪技术:Linux喜迎DTrace

我们希望能够知道:“慢,是为什么慢;快,又是为什么快”。 如果要回答这个问题&#...

2016/11/26 15:49
725
0
推荐!程序员整理的系统管理员资源大全

推荐!程序员整理的系统管理员资源大全

2015/01/25 23:04
947
3

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部