常用命令案例:抓取kubernetes pod 客户端ip 为172.27.16.16 的udp请求
# 列出容器监听端口
$ sudo sysdig -pc -A -c netstat container.name=aaa
# 抓取kubernetes pod 的客户端ip为172.27.16.16,3000端口的的请求内容
$ sudo sysdig -A -c echo_fds k8s.pod.name contains piller-datacenter-guide-web-dev and fd.port=3000 and evt.type=read and fd.cip=172.27.16.16 fd.proto=UDP
#抓取kubernetes pod 的客户端ip为172.27.16.17,3000端口的的请求内容
$ sudo sysdig -A -c echo_fds k8s.pod.name contains piller-datacenter-guide-web-dev and fd.port=3000 and evt.type=read and fd.cip=172.27.16.17 fd.proto=UDP
#查看占用网络带宽最多的进程
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"
#显示 wordpress1 容器在端口 80 上发送和接收的数据:
sysdig -A -cecho_fds container.name=wordpress1 and fd.port=80
#实时打印 mysql 容器接收的所有新连接
sysdig -p"%fd.name" container.name=mysql and evt.type=accept
复制代码
进程
#查看哪些文件花费时间做多
sysdig -c topfiles_time
#查看httpd进程哪些文件花费最多时间
sysdig -c topfiles_time proc.name=httpd
#查看io错误最多的进程
sysdig -c topprocs_errors
#查看io错误最多的文件
sysdig -c topfiles_errors
#查看磁盘io失败的调用
sysdig fd.type=file and evt.failed=true
#查看httpd打开失败的文件
sysdig "proc.name=httpd and evt.type=open and evt.failed=true"