Kyanos是一个网络流量采集和分析工具github.com/hengyous

又仁看科技 2024-12-24 09:59:14

Kyanos 是一个网络流量采集和分析工具

github.com/hengyoush/kyanos

它提供如下特性:

强大的流量过滤功能:不仅可以根据传统 IP/端口 等信息过滤,还支持根据:进程/容器、L7协议信息、请求/响应字节数、耗时等过滤你想要的数据。

⭐ 根据 pid 过滤

./kyanos watch --pids 1234

⭐ 根据容器 id 过滤

./kyanos watch --container-id abc

⭐ 根据 redis 的 key 过滤

./kyanos watch redis --keys my-key1,my-key2

⭐ 根据响应字节数过滤

./kyanos watch --resp-size 10000

⭐强大的分析功能: 和 tcpdump 只提供细粒度的抓包功能不同,kyanos 还支持以各种维度聚合抓取的数据包的指标信息,快速得到对排查问题最有用的关键数据。想象一下你的 HTTP 服务的带宽突然被打满,你该如何快速的分析是 哪些 ip 的 哪些请求 造成的?

使用 kyanos 只需要一行命令:kyanos stat http --bigresp 即可找到发送给哪些远程 ip 的响应字节数最大,并且还能够发现请求响应的具体数据。 kyanos find big response

⭐深入内核的耗时细节:在实际业务场景中我们经常遇到远程服务慢查询问题,比如访问 Redis 请求较慢,但是 具体慢在哪里 在传统监控方式下很难给出确切答案。而 kyanos 提供了 请求/响应 到达网卡以及从 内核Socket 缓冲区读取的内核埋点,并且以可视化的图形展示出来,你可以方便的判断是哪一个环节出现了问题。 kyanos time detail

如上所示,这是一个在容器内执行 curl 命令的耗时记录,你可以发现 kyanos 记录了请求经过容器网卡、宿主机网卡,响应经过宿主机网卡、容器网卡、Socket缓冲区每个步骤的耗时。

⭐轻量级零依赖:几乎 0 依赖,只需要单个二进制文件,一行命令,所有结果都展示在命令行中。

SSL流量自动解密:kyanos 为你抓取的请求响应结果全部都是明文。

0 阅读:0
又仁看科技

又仁看科技

感谢大家的关注