tpt-rails 1.6.1 → 1.6.2
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 +4 -4
- data/app/models/tpt/rails/event_bridge_publisher.rb +15 -3
- data/lib/tpt/rails/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7a7e431aaf9c9d3546eb414ab15564aba43048d9a3b64104671a1dd589bdc61f
|
4
|
+
data.tar.gz: 4ecdc856396d0d987e8e847694534b620b5140a442714f5f6e7e236f2625f869
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 71faac471d35a3e67356427581afdac4f44fcb66c5840b9a8d06571b15e4e47672e36c252352787be31bd5da35e53d69eff3901c79a6c5685abaa49b0c575057
|
7
|
+
data.tar.gz: 68670905648c6cb7456768e0805e04b4c904cd808ada80db3961a73ad35e961f0c51ed597c06b25d2b307fca91822b33998caead07b9b7bf998837d01a65f933
|
@@ -1,5 +1,7 @@
|
|
1
1
|
module Tpt::Rails
|
2
2
|
class EventBridgePublisher
|
3
|
+
class NoEntriesInResponseData < StandardError; end
|
4
|
+
|
3
5
|
attr_accessor :batch_size
|
4
6
|
|
5
7
|
def initialize(
|
@@ -29,6 +31,7 @@ module Tpt::Rails
|
|
29
31
|
end
|
30
32
|
|
31
33
|
private
|
34
|
+
|
32
35
|
attr_reader :client, :event_bus_name, :event_source
|
33
36
|
|
34
37
|
def publish_batch(events)
|
@@ -47,7 +50,7 @@ module Tpt::Rails
|
|
47
50
|
metrics.increment('tpt.event_bridge.publish_failure', by: events.length, tags: ["error_code:publish_batch_failure"])
|
48
51
|
|
49
52
|
# re-reraise the error for users to handle
|
50
|
-
raise
|
53
|
+
raise
|
51
54
|
end
|
52
55
|
|
53
56
|
def wrap_events(events)
|
@@ -63,6 +66,15 @@ module Tpt::Rails
|
|
63
66
|
end
|
64
67
|
|
65
68
|
def handle_response(res, events)
|
69
|
+
unless res&.data&.entries
|
70
|
+
logger.error({
|
71
|
+
msg: "No entries in the response data",
|
72
|
+
response: res,
|
73
|
+
events: events,
|
74
|
+
})
|
75
|
+
raise NoEntriesInResponseData, "No entries in the response data"
|
76
|
+
end
|
77
|
+
|
66
78
|
res.data.entries.each_with_index do |entry, index|
|
67
79
|
if entry.error_code.present?
|
68
80
|
metrics.increment('tpt.event_bridge.publish_failure', tags: ["error_code:#{entry.error_code}"])
|
@@ -86,8 +98,8 @@ module Tpt::Rails
|
|
86
98
|
access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID', nil),
|
87
99
|
secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY', nil),
|
88
100
|
region: ENV.fetch('AWS_REGION', 'us-east-1'),
|
89
|
-
http_open_timeout:
|
90
|
-
http_read_timeout:
|
101
|
+
http_open_timeout: 3, # default is 15
|
102
|
+
http_read_timeout: 15, # default is 60
|
91
103
|
}.merge(options)
|
92
104
|
|
93
105
|
Aws::EventBridge::Client.new(all_options)
|
data/lib/tpt/rails/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tpt-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- TpT
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|