DumpAny —— 一款支持 HTTP / gRPC / MySQL / Redis 的全能网络调试工具

前言

做后端开发、全栈开发的同学,日常工作中大概率离不开网络调试工具。

当你需要查看一个 HTTP 请求的完整内容、分析一条 gRPC 调用的参数和返回值、定位一条 MySQL 慢查询的 SQL 语句、或者追踪 WebSocket 的实时消息时------一款好用的网络调试工具能节省大量时间。

DumpAny 就是在这些场景下设计的一款网络调试工具。

一、DumpAny 是什么

DumpAny 是一款多协议网络代理调试工具,支持 HTTP/HTTPS、gRPC、WebSocket、SSE、MySQL、MariaDB、Redis、Postgres 等协议的流量劫持、分析和重放。

一次启动,在一个界面中统一查看所有协议的请求。

核心特性:

  • MITM 代理,无需修改代码即可拦截流量
  • 支持 8+ 种协议的请求/响应捕获
  • WebSocket/SSE 流式内容逐条实时展示
  • 请求重放(Repeat / Compose)
  • 断点调试(Breakpoint)
  • 跨平台:macOS / Windows / Linux

二、支持的协议

DumpAny 通过代理的方式劫持流量,支持的协议覆盖了日常开发和调试的大部分场景:

协议 能力
HTTP / HTTPS 完整请求/响应捕获,Header / Body / Cookie 全量展示
gRPC 拦截 gRPC 调用,查看 request / response
WebSocket 逐帧解析展示,支持 permessage-deflate 解压
Server-Sent Events 实时滚动展示事件流
MySQL SQL 语句级别拦截,查看结果集
MariaDB 同 MySQL
Redis 命令级别拦截,查看参数和响应
Postgres PostgreSQL 协议抓包

所有协议的请求在一个列表中按时间线排列,支持过滤、搜索、排序。


三、核心功能

3.1 多协议统一视图

启动 DumpAny 后,所有被捕获的请求会出现在一个统一的表格中。每一行代表一个请求,包含时间、协议类型、方法、URI、状态、耗时等信息。

协议类型有颜色标识,一眼就能区分 HTTP、MySQL、Redis 等不同来源的请求。

3.2 请求详情查看

选中一条请求后,右侧面板展示该请求的完整信息。对于不同协议,展示的内容也针对性地做了优化:

  • HTTP:Headers / Body / Query / Cookies / Raw 格式查看
  • gRPC:request metadata / response metadata / message 内容
  • MySQL:SQL 语句 / 执行结果 / 影响行数 / 错误信息
  • Redis:命令 / 参数 / 响应
  • WebSocket:逐条消息的时间戳/方向/内容,实时追加

对于大文件请求体/响应体,支持缓存文件懒加载,不会一次性占用大量内存。

3.3 流式内容实时展示

WebSocket 和 SSE 是流式协议,数据持续写入。

DumpAny 支持实时轮询获取最新内容并自动滚动跟随,同时会累计未读消息数。大致效果如下:

复制代码
[10:23:01] RECV text:  {"type": "ticker", "price": 123.45}
[10:23:02] RECV text:  {"type": "ticker", "price": 123.46}
[10:23:03] SEND text:  {"action": "subscribe", "symbol": "BTC"}

对于 gRPC 的双向流,同样支持实时查看。

3.4 请求重放

捕获到的请求支持两种重放方式:

  • Repeat:原样重新发送一次,快速验证接口是否可复现
  • Compose:在界面上修改方法、URI、Headers、Body 后再发送,适合调试参数变化的影响

MySQL 和 Redis 捕获的请求同样支持重放。

3.5 断点调试

在请求发送前或响应返回前中断,可以查看和修改数据。在调试一些特定场景时非常有用。

3.6 时序视图

对于 HTTP 请求,DumpAny 会记录请求生命周期的各个阶段耗时:DNS 解析、TCP 连接、TLS 握手、请求发送、响应接收等,以瀑布图的形式展示在详情面板中,方便快速定位耗时瓶颈。


四、典型使用场景

场景一:前后端联调

前端说接口返回异常,后端说本地调是好的。在 DumpAny 中启动代理,前端流量经过代理,查看实际发出的请求内容和后端返回的响应,问题一目了然。

场景二:gRPC 服务调试

gRPC 的二进制协议使得传统 HTTP 代理无法直接拦截。DumpAny 通过 gRPC-web 透明代理方案,不需要改代码、不需要改部署,即可查看 gRPC 调用的完整 request 和 response 内容。

场景三:MySQL 慢查询定位

业务反馈接口慢,怀疑是 SQL 查询的问题。启动 MySQL 代理,捕获该接口触发的所有 SQL 语句,查看每条 SQL 的耗时和执行结果。找到慢查询后,可以直接重放并验证优化效果。

场景四:WebSocket 消息追踪

前端和服务端之间建立了 WebSocket 连接,但消息对不上。DumpAny 中查看逐条消息的发送方、接收方、内容和时间戳,双向都能看到。


五、使用方式

DumpAny 提供了简洁的图形界面,操作流程大致如下:

  1. 在配置页创建一个代理(选择协议、设置端口、填写目标地址)
  2. 启动代理
  3. 将客户端流量指向 DumpAny(自动配置系统代理或手动设置)
  4. 在主窗口查看实时捕获的请求
  5. 点击任意请求查看详情

对于 HTTPS 流量,首次使用时会引导安装 CA 证书。


六、下载

DumpAny 支持 macOS / Windows / Linux。

官网下载:https://dumpany.cn


如果你感兴趣,欢迎下载体验。如有问题或反馈,欢迎交流。

相关推荐
三川6982 小时前
深入浅出SSD 09:NVMe介绍
网络
超级赛博搬砖工2 小时前
并发、多线程和HTTP连接之间有什么关系?
网络·网络协议·http
wWYy.3 小时前
RPC详解
qt·rpc·php
房开民3 小时前
ROS2 动作通信从零开始理解
网络
兰_博3 小时前
ensp配置-无线局域网配置
网络
Sayuanni%33 小时前
Spring IOC
java·spring·rpc
许彰午4 小时前
17-22-运维与高级主题
运维·网络
万联WANFLOW4 小时前
外贸独立站:服务器放海外国内后台卡,放国内海外客户打不开——这道两头难怎么破?
运维·网络·数据库·经验分享
思-无-涯4 小时前
测试面试新趋势:工程思维成关键
人工智能·功能测试·测试工具·职场和发展·可用性测试