network_resiliency 0.6.6 → 0.6.8

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: 3a117a433190255f909972c26e9e0e9ce40cf9514f5fedd957f5dbdd85579506
4
- data.tar.gz: e4f400b0a755df561089df6d5e771e63d1cbc4036ebe34e7588bd8073c11616c
3
+ metadata.gz: b907866b5327e9488dca8b828bbf3b14c84a257c6a62c6381197455f11fc337b
4
+ data.tar.gz: 8aa6d3fbe7a1a0bae41711b18f02659363b620af749bc9cc778fd244398c9e36
5
5
  SHA512:
6
- metadata.gz: 6b9e8785746b244b51698b4561e377bbb4ea919e6963949e4de017a1ad044a86eb6a92f7ceb9e7903ed4dd44eec998b5512d02045567eb427256c3a7508cf5df
7
- data.tar.gz: ad266433a748c586f249b344f28bf77ea2df57f7a75fa56cb7b443eb1cd5a4fd0200b7a043e019568f40a869a9c8a07bd380895e72b9646f65fa75c192632ad7
6
+ metadata.gz: 98c21b67a95c4ac785df751ae874e53f5116908462e5d17944831202e414ddc3644601d7e9c3ca6b00703a900490e56d575cff7a896a2606ef3167521ebfde88
7
+ data.tar.gz: 7f9d19f1546bfb251243cd142899af1eb74d561e9004e25b91b28e072d7f23f68646c0c2ba5b145ab933c28eafc762303e56811169ce4dd8f2822f60a235bef5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ### v0.6.8 (2023-12-04)
2
+ - slim metrics
3
+
4
+ ### v0.6.7 (2023-12-04)
5
+ - auto patch
6
+ - adapter stubbing
7
+
1
8
  ### v0.6.6 (2023-11-29)
2
9
  - path normalization
3
10
  - http destination ordering
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- network_resiliency (0.6.6)
4
+ network_resiliency (0.6.8)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,3 +1,3 @@
1
1
  module NetworkResiliency
2
- VERSION = "0.6.6"
2
+ VERSION = "0.6.8"
3
3
  end
@@ -28,6 +28,14 @@ module NetworkResiliency
28
28
  yield self if block_given?
29
29
 
30
30
  Syncer.start(redis) if redis
31
+
32
+ unless @patched
33
+ # patch everything that's available
34
+ ADAPTERS.each do |adapter|
35
+ patch(adapter)
36
+ rescue LoadError, NotImplementedError
37
+ end
38
+ end
31
39
  end
32
40
 
33
41
  def patch(*adapters)
@@ -45,6 +53,8 @@ module NetworkResiliency
45
53
  raise NotImplementedError
46
54
  end
47
55
  end
56
+
57
+ @patched = true
48
58
  end
49
59
 
50
60
  def enabled?(adapter)
@@ -171,16 +181,6 @@ module NetworkResiliency
171
181
  }.compact,
172
182
  )
173
183
 
174
- NetworkResiliency.statsd&.distribution(
175
- "network_resiliency.#{action}.magnitude",
176
- duration.order_of_magnitude(ceil: true),
177
- tags: {
178
- adapter: adapter,
179
- destination: destination,
180
- error: error,
181
- }.compact,
182
- )
183
-
184
184
  NetworkResiliency.statsd&.gauge(
185
185
  "network_resiliency.#{action}.timeout",
186
186
  timeout,
@@ -198,18 +198,8 @@ module NetworkResiliency
198
198
  adapter: adapter,
199
199
  destination: destination,
200
200
  },
201
- ) if timeout && timeout > 0
201
+ ) if timeout && timeout > duration
202
202
  else
203
- # track successful retries
204
- NetworkResiliency.statsd&.increment(
205
- "network_resiliency.#{action}.resilient",
206
- tags: {
207
- adapter: adapter,
208
- destination: destination,
209
- attempts: attempts,
210
- },
211
- ) if attempts > 1
212
-
213
203
  # record stats
214
204
  key = [ adapter, action, destination ].join(":")
215
205
  stats = StatsEngine.add(key, duration)
@@ -344,6 +334,7 @@ module NetworkResiliency
344
334
  @enabled = nil
345
335
  @mode = nil
346
336
  @normalize_request = nil
337
+ @patched = nil
347
338
  Thread.current["network_resiliency"] = nil
348
339
  StatsEngine.reset
349
340
  Syncer.stop
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: network_resiliency
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.6
4
+ version: 0.6.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Pepper
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-29 00:00:00.000000000 Z
11
+ date: 2023-12-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: byebug