zuora_connect 1.5.40j → 1.5.40k
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/zuora_connect/app_instance_base.rb +46 -6
- data/lib/zuora_connect/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1ab8265f0d808ba6afe86de40005431b22c63025
|
4
|
+
data.tar.gz: 7ee4bdf9c8d4a4a2025abbfed0fb832dfb19507f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a5767173c008b7ccabd534dd58dec659cb54456bcc6e2c05763fa0c43e4f10cc9056b4e2fc1dd44a201d4baae89062a981accf1e365f361556a129cf4b2aa4f5
|
7
|
+
data.tar.gz: 47fe75a6e62d7172d2f98ffec025d089d03950f6883005e8881d3678fa54592d6c0888284b9d36754072e80d0f4377bffb4b044b1ee5e1af25ed7787e9da871f
|
@@ -1,4 +1,5 @@
|
|
1
1
|
module ZuoraConnect
|
2
|
+
require "uri"
|
2
3
|
class AppInstanceBase < ActiveRecord::Base
|
3
4
|
default_scope {select(ZuoraConnect::AppInstance.column_names.delete_if {|x| ["catalog_mapping", "catalog"].include?(x) }) }
|
4
5
|
after_initialize :init
|
@@ -73,8 +74,8 @@ module ZuoraConnect
|
|
73
74
|
if error_type
|
74
75
|
begin
|
75
76
|
ZuoraConnect.configuration.telegraf_client.write(ZuoraConnect.configuration.app_name_outbound,
|
76
|
-
tags: {endpoint: endpoint_name, status: status_code, process_type: p_type, "app_instance": app_instance, "function_name": function_name, method: method_name},
|
77
|
-
values: {response_time: response_time
|
77
|
+
tags: {endpoint: endpoint_name, status: status_code, process_type: p_type, "app_instance": app_instance, "function_name": function_name, method: method_name, "error_type": error_type},
|
78
|
+
values: {response_time: response_time})
|
78
79
|
rescue => e
|
79
80
|
raise e
|
80
81
|
end
|
@@ -183,7 +184,7 @@ module ZuoraConnect
|
|
183
184
|
|
184
185
|
def refresh(session = nil)
|
185
186
|
refresh_count ||= 0
|
186
|
-
|
187
|
+
error_type = ""
|
187
188
|
start = Time.now
|
188
189
|
response = HTTParty.get(ZuoraConnect.configuration.url + "/api/#{self.api_version}/tools/tasks/#{self.id}.json",:body => {:access_token => self.access_token})
|
189
190
|
response_time = Time.now - start
|
@@ -203,6 +204,7 @@ module ZuoraConnect
|
|
203
204
|
Rails.logger.info("[#{self.id}] REFRESH TASK - #{ex.class} Retrying(#{refresh_count})")
|
204
205
|
retry
|
205
206
|
else
|
207
|
+
error_type = "#{ex.class}"
|
206
208
|
Rails.logger.fatal("[#{self.id}] REFRESH TASK - #{ex.class} Failed #{refresh_count}x")
|
207
209
|
raise
|
208
210
|
end
|
@@ -214,9 +216,16 @@ module ZuoraConnect
|
|
214
216
|
end
|
215
217
|
retry
|
216
218
|
else
|
219
|
+
error_type = "#{ex.class}"
|
217
220
|
Rails.logger.fatal("[#{self.id}] REFRESH TASK - Failed #{refresh_count}x")
|
218
221
|
raise
|
219
222
|
end
|
223
|
+
ensure
|
224
|
+
# Writing to telegraf
|
225
|
+
status_code = response.code if response
|
226
|
+
endpoint_name = URI(ZuoraConnect.configuration.url).host
|
227
|
+
Thread.current[:appinstance].present? ? app_instance = Thread.current[:appinstance].id : app_instance = 0
|
228
|
+
ZuoraConnect::AppInstanceBase.write_to_telegraf("response_time": response_time, "status_code": status_code, "endpoint_name": endpoint_name, "direction": "outbound", "error_type": error_type, "function_name": "#{self.class}##{__method__}", "method_name": "GET", "app_instance": app_instance)
|
220
229
|
end
|
221
230
|
|
222
231
|
#### START Task Mathods ####
|
@@ -256,13 +265,28 @@ module ZuoraConnect
|
|
256
265
|
end
|
257
266
|
|
258
267
|
def updateOption(optionId, value)
|
259
|
-
|
268
|
+
begin
|
269
|
+
start_time = Time.now
|
270
|
+
response = HTTParty.get(ZuoraConnect.configuration.url + "/api/#{self.api_version}/tools/application_options/#{optionId}/edit?value=#{value}",:body => {:access_token => self.username})
|
271
|
+
rescue => e
|
272
|
+
error_type = "#{e.class}"
|
273
|
+
ensure
|
274
|
+
end_time = Time.now
|
275
|
+
response_time = end_time - start_time
|
276
|
+
status_code = response.code if response
|
277
|
+
endpoint_name = URI(ZuoraConnect.configuration.url).host
|
278
|
+
Thread.current[:appinstance].present? ? app_instance = Thread.current[:appinstance].id : app_instance = 0
|
279
|
+
ZuoraConnect::AppInstanceBase.write_to_telegraf("response_time": response_time, "status_code": status_code, "endpoint_name": endpoint_name, "direction": "outbound", "error_type": error_type, "function_name": "#{self.class}##{__method__}", "method_name": "GET", "app_instance": app_instance)
|
280
|
+
return response
|
281
|
+
end
|
260
282
|
end
|
261
283
|
|
262
284
|
#This can update an existing login, add a new login, change to another existing login
|
263
285
|
#EXAMPLE: {"name": "ftp_login_14","username": "ftplogin7","tenant_type": "Custom","password": "test2","url": "www.ftp.com","custom_data": { "path": "/var/usr/test"}}
|
264
286
|
def update_logins(options)
|
265
287
|
update_login_count ||= 0
|
288
|
+
start_time = Time.now
|
289
|
+
error_type = ""
|
266
290
|
response = HTTParty.post(ZuoraConnect.configuration.url + "/api/#{self.api_version}/tools/tasks/#{self.id}/logins",:body => {:access_token => self.username}.merge(options))
|
267
291
|
parsed_json = JSON.parse(response.body)
|
268
292
|
if response.code == 200
|
@@ -277,10 +301,11 @@ module ZuoraConnect
|
|
277
301
|
else
|
278
302
|
raise ZuoraConnect::Exceptions::ConnectCommunicationError.new("Error Communicating with Connect", response.body, response.code)
|
279
303
|
end
|
280
|
-
rescue Net::ReadTimeout, Net::OpenTimeout, Errno::EPIPE, Errno::ECONNRESET, Errno::ECONNREFUSED, SocketError
|
304
|
+
rescue Net::ReadTimeout, Net::OpenTimeout, Errno::EPIPE, Errno::ECONNRESET, Errno::ECONNREFUSED, SocketError => ex
|
281
305
|
if (update_login_count += 1) < 3
|
282
306
|
retry
|
283
307
|
else
|
308
|
+
error_type = "#{ex.class}"
|
284
309
|
raise
|
285
310
|
end
|
286
311
|
rescue ZuoraConnect::Exceptions::ConnectCommunicationError => ex
|
@@ -290,8 +315,16 @@ module ZuoraConnect
|
|
290
315
|
end
|
291
316
|
retry
|
292
317
|
else
|
318
|
+
error_type = "#{ex.class}"
|
293
319
|
raise
|
294
320
|
end
|
321
|
+
ensure
|
322
|
+
end_time = Time.now
|
323
|
+
response_time = end_time - start_time
|
324
|
+
status_code = response.code if response
|
325
|
+
endpoint_name = URI(ZuoraConnect.configuration.url).host
|
326
|
+
Thread.current[:appinstance].present? ? app_instance = Thread.current[:appinstance].id : app_instance = 0
|
327
|
+
ZuoraConnect::AppInstanceBase.write_to_telegraf("response_time": response_time, "status_code": status_code, "endpoint_name": endpoint_name, "direction": "outbound", "error_type": error_type, "function_name": "#{self.class}##{__method__}", "method_name": "POST", "app_instance": app_instance)
|
295
328
|
end
|
296
329
|
#### END Task Mathods ####
|
297
330
|
|
@@ -310,7 +343,7 @@ module ZuoraConnect
|
|
310
343
|
|
311
344
|
def refresh_oauth
|
312
345
|
refresh_oauth_count ||= 0
|
313
|
-
|
346
|
+
error_type = ""
|
314
347
|
start = Time.now
|
315
348
|
params = {
|
316
349
|
:grant_type => "refresh_token",
|
@@ -337,6 +370,7 @@ module ZuoraConnect
|
|
337
370
|
Rails.logger.info("[#{self.id}] REFRESH OAUTH - #{ex.class} Retrying(#{refresh_oauth_count})")
|
338
371
|
retry
|
339
372
|
else
|
373
|
+
error_type = "#{ex.class}"
|
340
374
|
Rails.logger.fatal("[#{self.id}] REFRESH OAUTH - #{ex.class} Failed #{refresh_oauth_count}x")
|
341
375
|
raise
|
342
376
|
end
|
@@ -351,9 +385,15 @@ module ZuoraConnect
|
|
351
385
|
Rails.logger.info("[#{self.id}] REFRESH OAUTH - Failed Retrying(#{refresh_oauth_count})")
|
352
386
|
retry
|
353
387
|
else
|
388
|
+
error_type = "#{ex.class}"
|
354
389
|
Rails.logger.fatal("[#{self.id}] REFRESH OAUTH - Failed #{refresh_oauth_count}x")
|
355
390
|
raise
|
356
391
|
end
|
392
|
+
ensure
|
393
|
+
status_code = response.code if response
|
394
|
+
endpoint_name = URI(ZuoraConnect.configuration.url).host
|
395
|
+
Thread.current[:appinstance].present? ? app_instance = Thread.current[:appinstance].id : app_instance = 0
|
396
|
+
ZuoraConnect::AppInstanceBase.write_to_telegraf("response_time": response_time, "status_code": status_code, "endpoint_name": endpoint_name, "direction": "outbound", "error_type": error_type, "function_name": "#{self.class}##{__method__}", "method_name": "POST", "app_instance": app_instance)
|
357
397
|
end
|
358
398
|
#### END Connect OAUTH methods ####
|
359
399
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zuora_connect
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.40k
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Connect Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-08-
|
11
|
+
date: 2018-08-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: apartment
|