grpc_interceptors 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d25e64c56db11d1b34fd966a59da4ad97ca2883fdbb68f2e046731a0f46f538
4
- data.tar.gz: 282ee4ba2bf4dafe62c5896697106c48e26e8d739ff62dc3f603bddbeba37049
3
+ metadata.gz: ef558aae01335bdd0b85294c24c56c259d1c3e2121b4f1085350a9bdb7a66865
4
+ data.tar.gz: 517e6c4a507442f71f296a313ba48640dc69ae54723631ac27c0b1699eeb5090
5
5
  SHA512:
6
- metadata.gz: c28c9eb7f8e08408a243ed15c400203165466c1c128f7552c97c12b87c996790c6a9c99751d011cb2cb317bdc9a62153f81fd86abbfba7601745a0ba8ab95878
7
- data.tar.gz: 33279a6a49e2414e50e70a621fd5a1584ce87c06de408395e05f9442c5b4d4100a45e86aa589feee9083afffb1415b1d4979a94b218b45318f50c0be7ae2749f
6
+ metadata.gz: f19be2edc9078da2cdfaa817342b91fcabfa465b37610bbf1ff8fc5f82c1926fa5e3fdb8bc9fed63a6ffaecf24eae4ae2b3afe138053559389c93e4cdff47f83
7
+ data.tar.gz: e65412d18e6d79cc8d39f3fdaeaeeb3d3213bd25517b7241808682f1fba219eb230362ac14bfdf50e006933067a8ffae1f1a57e5929137d1a2a2e36109d8b487
@@ -57,8 +57,8 @@ module GrpcInterceptors
57
57
  if @logger.level == Logger::Severity::INFO
58
58
  @logger.info(payload)
59
59
  elsif @logger.level == Logger::Severity::DEBUG
60
- payload['request'] = request.to_h
61
- payload['response'] = response.to_h
60
+ payload['request'] = Common::GrpcHelper.proto_to_h(request)
61
+ payload['response'] = Common::GrpcHelper.proto_to_h(response)
62
62
  @logger.debug(payload)
63
63
  end
64
64
  end
@@ -42,6 +42,19 @@ module GrpcInterceptors
42
42
  method_parts = method.to_s.sub(%r{^/}, '').split('/')
43
43
  method_parts[1..].join('/')
44
44
  end
45
+
46
+ # converts proto message to a Ruby hash preserving the original fields' names
47
+ # and including default values
48
+ # WARNING! It can be slow and not 100% accurate. In this gem it's onyl used in the DEBUG mode
49
+ # related comment # related comment https://github.com/protocolbuffers/protobuf/issues/6755#issuecomment-733880977
50
+ def self.proto_to_h(proto)
51
+ JSON(
52
+ proto.to_json(
53
+ emit_defaults: true,
54
+ preserve_proto_fieldnames: true
55
+ )
56
+ )
57
+ end
45
58
  end
46
59
  end
47
60
  end
@@ -54,7 +54,7 @@ module GrpcInterceptors
54
54
  elsif @logger.level == Logger::Severity::INFO
55
55
  @logger.info(payload)
56
56
  elsif @logger.level == Logger::Severity::DEBUG
57
- payload['request'] = request.to_h
57
+ payload['request'] = Common::GrpcHelper.proto_to_h(request)
58
58
  @logger.debug(payload)
59
59
  end
60
60
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grpc_interceptors
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - michal-kazmierczak
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-03-06 00:00:00.000000000 Z
11
+ date: 2024-03-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: grpc