* 戳上方蓝字“开源先锋”关注我
推荐阅读:
《5.6K star!再见了DocSend,这款开源项目更不错!》
《9.1K star!国外大神1:1复刻Win11系统,开源牛逼!》
《2.8K star!超强音乐管理工具,支持多平台、一键“解锁”!》
大家好,我是开源君!
在云计算和微服务盛行的今天,网络问题成了我们开发者和运维工程师心中的痛。传统的抓包工具虽然功能强大,但使用起来繁琐且不够直观。
今天开源君分享一个超级酷的开源项目 - Kyanos
,一个基于eBPF技术的网络流量采集和分析工具,让网络问题分析变得简单高效。
项目简介
Kyanos
,这个名字听起来就挺神秘对吧?其实,它就是一个强大的网络流量采集和分析工具。基于eBPF技术,Kyanos能够深入到操作系统内核,捕获并分析各种网络请求,比如HTTP、Redis、MySQL等。它就像是一个网络世界的侦探,帮你快速定位和解决那些让人头疼的网络异常问题。
目前在Github上收获了2.9K star!
性能特色
强大的流量过滤功能:Kyanos可以根据进程、容器、L7协议信息等多维度进行过滤,就像是给你的网络流量装上了“智能筛选器”。 高级分析能力:Kyanos不仅能捕获数据包,还能聚合捕获的数据包指标,快速提供关键数据。比如,你的HTTP服务带宽突然被打满,Kyanos一命令就能找出是哪些IP的哪些请求造成的。 深入内核的耗时细节:Kyanos提供了请求/响应到达网卡以及从内核Socket缓冲区读取的内核埋点,并且以可视化的图形展示出来,让你方便地判断是哪一个环节出现了问题。 轻量级零依赖:Kyanos几乎0依赖,只需要单个二进制文件,一行命令,所有结果都展示在命令行中。 SSL流量自动解密:Kyanos为你抓取的请求响应结果全部都是明文。
快速使用
要使用Kyanos其实非常简单,从项目release页面下载适合当前系统环境的二进制文件并解压。
tar xvf kyanos_vx.x.x_linux_x86.tar.gz
然后以root权限执行命令:
./kyanos watch
如果一切顺利,将看到一个表格,里面记录了每个请求响应的基本信息。
我们可以使用方向键或j/k
键上下移动选择记录,按Enter
键查看详细信息。
项目体验展示
Kyanos的使用体验,简直是开了挂。比如,你想抓取HTTP流量并且获取耗时细节,只需要执行:
./kyanos watch http
如果你想抓取Redis流量获取耗时细节,可以执行:
./kyanos watch redis
甚至,你可以找到5秒内最慢的几个请求:
./kyanos stat --slow --time 5
Kyanos
真是一个不可多得的网络问题分析神器!它不仅功能强大,而且操作简单,让复杂的网络问题分析变得轻松愉快,无论是开发者还是运维工程师都能轻松上手。
更多细节功能,感兴趣的可以到项目地址查看:
项目地址:
https://github.com/hengyoush/kyanos