Hyperledger Fabric: слушайте поток данных при отправке транзакции

Когда я вызываю новую транзакцию с помощью SDK/или без него, как лучше всего выяснить связь между клиентом и узлом. Я хочу подробно следить за тем, что было отправлено, и что партнер отправляет обратно позже.

С wirehark у меня были проблемы из-за TLS,gRPC/pb. Есть ли способ прослушивать все отправленные сообщения и трафик?

Насколько я понял, gRPC Framework используется для связи между клиентом, пирами и заказчиком только в Fabric.


person Leon    schedule 30.04.2020    source источник


Ответы (1)


Есть несколько различных вариантов, которые вы могли бы использовать.

  1. Поскольку Hyperledger Fabric — это OSS, вы можете просто изменить код для проверки сообщения и регистрации или создания дампа данных в реализациях службы gRPC. Например: ProcessProposal служба gRPC реализовано в эндорсере.go.
  2. Вы можете отключить TLS и использовать инструменты, на которые вы ссылаетесь в своем посте (например, wireshark). Вы можете отключить TLS в core.yaml для партнер или в orderer.yaml для заказчика .
  3. Вы можете попытаться получить что-то вроде mitmproxy и настроить CLI/SDK, чтобы доверять его сертификату TLS. К сожалению, похоже, что выпущенная в настоящее время версия имеет некоторые проблемы с gRPC, поэтому вы можете нужна пользовательская сборка, чтобы сделать эту работу.

Насколько я понял, gRPC Framework используется для связи между клиентом, пирами и заказчиком только в Fabric.

Большинство клиентских API действительно основаны на gRPC. Некоторые из них, такие как конечная точка операций для установки уровней журналов и сбора метрик, основаны на REST.

person Jason Yellick    schedule 01.05.2020