@cdmonkey
2024-06-25T08:09:08.000000Z
字数 2271
阅读 249
命令总结

使用:
sysdig [option]... [filter]
| Opt | LongOpt | Explain |
|---|---|---|
-A |
--print-ascii |
只输出数据中文本部分 ,就是人可直接阅读之内容。 |
-b |
--print-base64 |
|
-w |
--write |
将事件捕获(trace)内容写入指定文件。 |
-r |
--read |
从哪里读入事件信息,通常是个 trace 文件。 |
-z |
--compress |
启用 trace 文件压缩。 |
列出指令支持的所有事件(主要是系统调用):
sysdig -L
列出所有过滤器:
sysdig -l
保存为文件使用 -w。
指定过滤器:
sysdig evt.type=readsysdig evt.type=read and proc.name=sshd
使用 -c 指定 Chisels,它是一系列预定义功能集合。
sysdig's chisels(类目)是内置脚本,供使用者用于追踪系统调用、查看系统性能瓶颈,它是用强大而且高效的 Lua 脚本语言编写。
sysdig -cl # --list-chisels,列出所有 Chisels
[root@hidocker02 ~]# sysdig -i fdbytes_by.luaCategory: I/O-------------fdbytes_by.lua I/O bytes, aggregated by an arbitrary filter fieldGroups FD activity based on the given filter field, and returns the key that generated the most input+output bytes. For example, this script can be used to list the processes or TCP ports that generated most traffic.Args:[string] key - The filter field used for grouping
依据给定筛选字段对 FD 活动进行分组,并返回生成最多 IO 字节的键。举例说,这个脚本可用于列出生成最多流量的进程及 TCP 端口。
首先,捕获 30M 的包用于分析:
sysdig -w fdbytes_by.scap -C 30
然后:
[root@hidocker02 ~]# sysdig -r fdbytes_by.scap0 -c fdbytes_by fd.typeBytes fd.type--------------------------------------------------------------------------------484.63KB file18.60KB ipv4475B netlink20B unix8B timerfd
然后:
[root@hidocker02 ~]# sysdig -r fdbytes_by.scap0 -c fdbytes_by fd.directory "fd.type=file"Bytes fd.directory--------------------------------------------------------------------------------182.81KB /lib64159.31KB /etc61.08KB /usr/share/locale52.55KB /proc11.27KB /dev11.07KB /dev/pts6.35KB /proc/net183B /proc/720
然后:
[root@hidocker02 ~]# sysdig -r fdbytes_by.scap0 -c fdbytes_by fd.name "fd.directory=/lib64"Bytes fd.name--------------------------------------------------------------------------------20.31KB /lib64/libselinux.so.120.31KB /lib64/libdl.so.220.31KB /lib64/libattr.so.120.31KB /lib64/libpthread.so.020.31KB /lib64/libpcre.so.120.31KB /lib64/libacl.so.120.31KB /lib64/libc.so.620.31KB /lib64/libcap.so.220.31KB /lib64/libnss_files.so.2
最后:
# 看看有哪些程序访问这个目录:sysdig -r fdbytes_by.scap0 -c fdbytes_by proc.name "fd.directory=/lib64"# 具体查看某个文件:sysdig -r fdbytes_by.scap0 -c fdbytes_by proc.name "fd.directory=/lib64 and fd.filename=libnss_files.so.2"
sysdig -c topprocs_cpu
监控用户的操作命令:
sysdig -c spy_users
查看占用网络带宽最多的进程:
sysdig -c topprocs_net
查看读写量最大的文件:
sysdig -c topfiles_bytes
Github
Wiki
