embulk-input-mixpanel 0.4.6 → 0.4.7

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
  SHA1:
3
- metadata.gz: 29de18241b68feaf375ea8e5b75f0bf6c79063a9
4
- data.tar.gz: 8f05066de1a870556450100082f3928b8a8655dc
3
+ metadata.gz: 8dd90cee458d5d530256723966f6cb61dceff1a0
4
+ data.tar.gz: 4ece79001e62af4c065423161a2aadbb2c0b6f1a
5
5
  SHA512:
6
- metadata.gz: c15de7628ef891132049c4f6137774bdf4315427e9e0d7c4c6cc29d8f0deaec4dad849b9985fc65c6f2214d4e3130f45460290f5d7e3bb35b53ec65596617d10
7
- data.tar.gz: 9390d1fbe6e20e773b6ef2ef23f40a9b2922556496b597604692ce22be498776e0b00cba423b995f106ee7fb21fcdf4f719ba47a87c3800201a8af9810e0e224
6
+ metadata.gz: 76d1b685cb7d7d66f8a8eeea81d010ecc3bec1e9a49ce2c3328f4b2f9f4086eb0a46fb61e83f5d45084ba33c664c94e70fc1cdf5201153cff6df48cbedd40ac9
7
+ data.tar.gz: 24ae64c8d5cfe45081fa3f8d5647a7d365cad2b349d8f6039e66b4f35ce1a7b6be9af4ec211c7c6b9f046ab0d466e934cdabb87e0ca876641cd8d25efe117d27
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 0.4.7 - 2016-09-08
2
+ * [fixed] Retry was only enabled on preview and run. [#45](https://github.com/treasure-data/embulk-input-mixpanel/pull/45)
3
+
1
4
  ## 0.4.6 - 2016-09-07
2
5
  * [enhancement] Retry with too frequency requests error [#44](https://github.com/treasure-data/embulk-input-mixpanel/pull/44)
3
6
 
@@ -1,7 +1,7 @@
1
1
 
2
2
  Gem::Specification.new do |spec|
3
3
  spec.name = "embulk-input-mixpanel"
4
- spec.version = "0.4.6"
4
+ spec.version = "0.4.7"
5
5
  spec.authors = ["yoshihara", "uu59"]
6
6
  spec.summary = "Mixpanel input plugin for Embulk"
7
7
  spec.description = "Loads records from Mixpanel."
@@ -91,7 +91,12 @@ module Embulk
91
91
  def self.guess(config)
92
92
  giveup_when_mixpanel_is_down
93
93
 
94
- client = MixpanelApi::Client.new(config.param(:api_key, :string), config.param(:api_secret, :string))
94
+ retryer = perfect_retry({
95
+ retry_initial_wait_sec: config.param(:retry_initial_wait_sec, :integer, default: 1),
96
+ retry_limit: config.param(:retry_limit, :integer, default: 5),
97
+ })
98
+
99
+ client = MixpanelApi::Client.new(config.param(:api_key, :string), config.param(:api_secret, :string), retryer)
95
100
 
96
101
  range = guess_range(config)
97
102
  Embulk.logger.info "Guessing schema using #{range.first}..#{range.last} records"
@@ -105,6 +110,17 @@ module Embulk
105
110
  return {"columns" => columns}
106
111
  end
107
112
 
113
+ def self.perfect_retry(task)
114
+ PerfectRetry.new do |config|
115
+ config.limit = task[:retry_limit]
116
+ config.sleep = proc{|n| task[:retry_initial_wait_sec] * (2 * (n - 1)) }
117
+ config.dont_rescues = [Embulk::ConfigError]
118
+ config.rescues = [RuntimeError]
119
+ config.log_level = nil
120
+ config.logger = Embulk.logger
121
+ end
122
+ end
123
+
108
124
  def init
109
125
  @api_key = task[:api_key]
110
126
  @api_secret = task[:api_secret]
@@ -113,14 +129,6 @@ module Embulk
113
129
  @schema = task[:schema]
114
130
  @dates = task[:dates]
115
131
  @fetch_unknown_columns = task[:fetch_unknown_columns]
116
- @retryer = PerfectRetry.new do |config|
117
- config.limit = task[:retry_limit]
118
- config.sleep = proc{|n| task[:retry_initial_wait_sec] * (2 * (n - 1)) }
119
- config.dont_rescues = [Embulk::ConfigError]
120
- config.rescues = [RuntimeError]
121
- config.log_level = nil
122
- config.logger = Embulk.logger
123
- end
124
132
  end
125
133
 
126
134
  def run
@@ -210,7 +218,7 @@ module Embulk
210
218
  "from_date" => from_date,
211
219
  "to_date" => to_date,
212
220
  )
213
- client = MixpanelApi::Client.new(@api_key, @api_secret, @retryer)
221
+ client = MixpanelApi::Client.new(@api_key, @api_secret, self.class.perfect_retry(task))
214
222
 
215
223
  if preview?
216
224
  client.export_for_small_dataset(params)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: embulk-input-mixpanel
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.6
4
+ version: 0.4.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - yoshihara
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-09-07 00:00:00.000000000 Z
12
+ date: 2016-09-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  requirement: !ruby/object:Gem::Requirement