0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

BloomRPCでgRPCをGUIデバッグ

というわけで今日は昨日実装したgRPCをデバッグしていきます。

使うのは uw-labs/bloomrpc という、GUIアプリケーションです。
実はこのツール弊社謹製のオープンソースツールなんですねー。すごい。

ダウンロード

早速ダウンロードしてみましょう。
READMEページの指示に従っていけば大丈夫です。
Macの場合はHomebrewでもインストールできます。

$ brew cask install bloomrpc

Screenshot 2019-11-24 at 11.48.50.png

protoファイルのインポート

ダウンロードしたら、protoファイルをインポートします。
grpcurlでもそうですが、gRPCはバイナリなのでprotoファイルを与えることでツールにフォーマットを理解させる必要があります。

画面左上の+ボタンから使用するprotoファイルを選択します。

Screenshot 2019-11-24 at 11.48.50 2.png

Screenshot 2019-11-24 at 11.50.14.png

左側のパネルにAPIが読み込まれれば成功です。

Screenshot 2019-11-24 at 11.53.16.png

リクエストの送信

準備は完了です。リクエストを送信してみましょう。
minikubeをスタートさせ(minikubeへのデプロイは二日目の記事を参照)、ポートフォワードでアプリの8090ポートを繋ぎます。

$ minikube start
$ kubectl -n qiita port-forward qiita-advent-calendar-2019-7c885c5698-hwkts 8090:8090
Forwarding from 127.0.0.1:8090 -> 8090
Forwarding from [::1]:8090 -> 8090

では前回ダミーで実装したGetTodoエンドポイントを叩いてみます。
ポート番号を8090に設定して画面中央の再生ボタンを押すだけです。
(idパラメータは今のところ用無しです。)

Screenshot 2019-11-24 at 12.08.43.png

リクエスト結果は右側のパネルに表示されます。

Screenshot 2019-11-24 at 16.31.48.png

protoファイルの更新

時にはprotoファイルを更新する必要がでてくることもあるでしょう。
そんなときは左上にあるReloadボタンを押します。protoファイルを読み込みなおし、新たなインターフェイスでリクエストを送信することができます。

Screenshot 2019-11-24 at 12.14.54.png

なお右上のView Protoボタンを押すと読み込んでいるprotoファイルをプレビューすることができるので便利です。

Screenshot 2019-11-24 at 12.12.07.png

Screenshot 2019-11-24 at 12.14.59.png


いかがでしたでしょうか、BloomRPC。
今回はUnaryのAPIのみでしたが、ストリームAPIのデバッグもできます。
gRPCをGUIでデバッグしたいときにとても便利なツールなのでぜひ触ってみてください。

明日からは...データの保存をしていこうかなと思います:)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
0
Help us understand the problem. What are the problem?