前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >超实用的 gRPC 客户端调试工具

超实用的 gRPC 客户端调试工具

原创
作者头像
RememberGo
修改2021-10-25 10:09:16
1.1K0
修改2021-10-25 10:09:16
举报

图片拍摄于2021年7月10日,湖州安吉。

介绍

正好看到董泽润老哥一篇关于使用WireShark分析gRPC流量的文章,学到了。原文地址:小技巧!Wireshark 让调试 grpc 不再困难

那我就介绍使用过的两款gRPC客户端调试工具吧。

Evans

Evans有两种运行模式:REPLCLI

比起其他gRPC客户端,Evans更具有表现力,并且它还支持自动补全功能。

Evans的安装非常方便,在Mac上我们只需要执行以下两行命令即可。

我们来学习一下REPL模式。

首先我们需要有一个pb文件,假设你的文件在api/api.proto,我们只需要这样:

默认地址为127.0.0.1:50051,当然你可以通过--host--port来指定服务器。

上图的命令:

  • show package读取pb包名,
  • show service显示对应服务列表。
  • call xxx调用gRPC服务......
  • .....

更多命令可自行查阅官网。

除了上述这种直接引入pb文件外,我们还可以通过gRPC反射包(reflection), 将grpc.Server注册到反射服务中。

这样的话,就可以通过reflection提供的反射服务查询到对应的gRPC服务,或者直接调用gRPC服务。

注册反射服务操作也很简单,

回到Evans工具, 如果一个gRPC服务注册了反射,我们就可以使用-r选项来启动Evans

比如像下面这样:

对另外一种模式感兴趣的可以自行查看官网,这里不再演示。

BloomRPC

BloomRPC是一个简单的GUI客户端工具,使用这个那就更简单了。

只需要导入pb文件,然后点两下即可。

当然每次修改了pb,记得点击左上角重新加载文件。

总结

以上介绍了两款gRPC客户端工具。不知道你们平常都使用gRPC哪些周边工具,欢迎一起讨论。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍
  • Evans
  • BloomRPC
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档