loggie 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b7f44eb361050e8b8c4146d150a7d06154d50ba4
4
- data.tar.gz: 79640e4eddf1f7509f3318175d146b5be8181665
3
+ metadata.gz: 54f4aa6ed07ad0839fc96270543d29a8613844a0
4
+ data.tar.gz: d3cc371da73af48e08e3692c4d614f3b09ded77f
5
5
  SHA512:
6
- metadata.gz: b2c2b6ed794cbc2d75d2febc1a71fe70a0c4f2687100e2031f58731e4cab9408c296b00bd9a302dc5b277da9a78e5eeee3696d65a9e15f02fa3a8b3c3a1673c8
7
- data.tar.gz: cfea02fe7b240be9dba042ef639cde88cc4f89b8929c158e94b8451a692fcb8f627463d82bf4319c90bbe17dadd886f2e0d5914a42f0bdaedf1144b879b208f4
6
+ metadata.gz: 2069a90bcbf532b442fcf3566c16ebb4a86aa6947695f0e59c9516e2d501ef2766b90a7b184442e4f92bd90141d04c0ece94bcf16c9370dcca5ea8f5d0a8d9d1
7
+ data.tar.gz: c63c50515147e7cdb02254efb0c6a8f3556416b5ce871714c2674a47f4ee59461d9adbe8e0f77576bca9b3146ec0f045a6393fb4b78133f5491b4dd854d95f11
data/bin/loggie CHANGED
@@ -5,6 +5,9 @@ require "bundler/setup"
5
5
 
6
6
  require 'dotenv'
7
7
  Dotenv.load
8
+ Dotenv.load(".loggie.env")
9
+
10
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), "/../lib"))
8
11
 
9
12
  require 'loggie'
10
13
  puts Loggie.search query: ARGV[0]
@@ -9,6 +9,10 @@ module Loggie
9
9
  RETRY_DELAY_SECONDS = ENV.fetch('RETRY_DELAY_SECONDS', 0.2).to_f
10
10
  MAX_RETRY_DELEY_SECONDS = 20 # max 20 seconds, or it will expire
11
11
 
12
+ class RetryError < RuntimeError; end
13
+ class RetryCountExceededError < RetryError; end
14
+ class RetryResponseError < RetryError; end
15
+
12
16
  def call(url, method, options, &block)
13
17
  # TODO: ensure retry_count is reset or if that matters
14
18
  @retry_count ||= 0
@@ -16,7 +20,7 @@ module Loggie
16
20
  logger.debug "#{self.class} retry:#{@retry_count}, response:#{response.body}"
17
21
 
18
22
  if response.code.to_i > 203
19
- log_and_raise "Failed request with:#{response.message}"
23
+ raise RetryCountExceededError, "Failed request with:#{response.message}"
20
24
  end
21
25
 
22
26
  res = Response.new response
@@ -25,19 +29,16 @@ module Loggie
25
29
 
26
30
  @retry_count += 1
27
31
  if @retry_count > MAX_RETRY
28
- log_and_raise "Retry count of #{MAX_RETRY} reached"
32
+ raise RetryCountExceededError, "Retry count of #{MAX_RETRY} reached"
29
33
  end
30
34
 
31
35
  sleep RETRY_DELAY_SECONDS
32
36
 
33
37
  self.call(res.next_url, :get, nil, &block)
34
- end
35
-
36
- private
37
38
 
38
- def log_and_raise(message)
39
- logger.error message
40
- raise message
39
+ rescue RetryError => e
40
+ logger.error e.message
41
+ nil
41
42
  end
42
43
  end
43
44
  end
@@ -1,3 +1,3 @@
1
1
  module Loggie
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: loggie
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ian Vaughan