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

开发 开发工具
Evans[1]有两种运行模式:REPL和CLI。比起其他gRPC客户端,Evans更具有表现力,并且它还支持自动补全功能。

[[413709]]

本文转载自微信公众号「吴亲强的深夜食堂」,作者吴亲库里 。转载本文请联系吴亲强的深夜食堂公众号。

介绍

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

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

Evans

Evans[1]有两种运行模式:REPL和CLI。

比起其他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[2]是一个简单的GUI客户端工具,使用这个那就更简单了。

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

当然有个不好点在于,每次修改了pb,都不得不重新导入。

总结

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

附录

[1]https://github.com/ktr0731/evans

[2]https://github.com/uw-labs/bloomrpc

 

责任编辑:武晓燕 来源: 吴亲强的深夜食堂
相关推荐

2021-11-29 07:47:57

gRPCGUI客户端

2024-03-08 09:35:25

2022-02-20 23:15:46

gRPCGolang语言

2015-06-24 10:34:42

2017-05-24 08:58:16

HiveServer界面工具

2021-09-22 15:46:29

虚拟桌面瘦客户端胖客户端

2010-06-02 10:27:56

MySQL客户端工具

2015-08-05 11:40:24

Linux FTP客户端

2020-09-14 11:27:32

工具代码开发

2022-07-29 09:01:20

Chrome试源代码调试技巧

2011-03-21 14:53:36

Nagios监控Linux

2011-04-06 14:24:20

Nagios监控Linux

2022-01-19 09:03:01

工具

2011-08-17 10:10:59

2022-08-28 10:36:53

调试工具通用

2019-08-30 09:32:32

监控负载测试工具

2016-10-08 15:03:17

OracleJavaScript开源工具

2011-07-27 09:54:24

2024-07-09 08:31:26

2024-01-24 13:22:40

Python调试工具技巧
点赞
收藏

51CTO技术栈公众号