deimos-ruby 1.23.1.pre.beta3 → 1.23.1.pre.beta5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/deimos/instrumentation.rb +3 -1
- data/lib/deimos/utils/db_poller/base.rb +0 -13
- data/lib/deimos/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 696b01837feaa687ba9e02fe71a5ad70421c9234ce97117f20d31ba7555ac4ae
|
4
|
+
data.tar.gz: 4569a0be36909365621cfa9835f998d72da34dffd9214ff0c4ac9f6bee6650d2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 62f9d3c9f8bdf74c3b1b9039c45d893f709cf70772d41e7c27287a990e4e5c4c3256d108bd9ed62b62ddd45c7be8e6f96953b13b87e9af790bbb948cf71c4232
|
7
|
+
data.tar.gz: '008829c8e8b217934c4ba28049e66191e9bd1f228035745e9f5811f567665ab2f95de20dd39860fb79ec910b8b766cafe2fb363a71e29c960727fed7d24ddf84'
|
@@ -49,6 +49,7 @@ module Deimos
|
|
49
49
|
# @return [void]
|
50
50
|
def self.send_produce_error(event)
|
51
51
|
exception = event.payload[:exception_object]
|
52
|
+
Rails.logger.info("Exception: #{exception}")
|
52
53
|
return unless exception
|
53
54
|
|
54
55
|
if exception.respond_to?(:failed_messages)
|
@@ -77,7 +78,7 @@ module Deimos
|
|
77
78
|
else
|
78
79
|
Deimos.config.metrics&.increment(
|
79
80
|
'publish_error',
|
80
|
-
by: event.
|
81
|
+
by: event.payload[:message_count] || 1
|
81
82
|
)
|
82
83
|
end
|
83
84
|
end
|
@@ -85,6 +86,7 @@ module Deimos
|
|
85
86
|
|
86
87
|
ActiveSupport::Notifications.subscribe('deliver_messages.producer.kafka') do |*args|
|
87
88
|
event = ActiveSupport::Notifications::Event.new(*args)
|
89
|
+
Rails.logger.info(event.payload)
|
88
90
|
KafkaListener.send_produce_error(event)
|
89
91
|
end
|
90
92
|
end
|
@@ -105,17 +105,6 @@ module Deimos
|
|
105
105
|
raise Deimos::MissingImplementationError
|
106
106
|
end
|
107
107
|
|
108
|
-
# @param span [Object]
|
109
|
-
# @param e [Exception]
|
110
|
-
def set_error_and_retry(span, e)
|
111
|
-
span.set_error(e)
|
112
|
-
span.finish
|
113
|
-
Deimos.config.tracer&.start(
|
114
|
-
'deimos-db-poller',
|
115
|
-
resource: @resource_class.name.gsub('::', '-')
|
116
|
-
)
|
117
|
-
end
|
118
|
-
|
119
108
|
# @param batch [Array<ActiveRecord::Base>]
|
120
109
|
# @param status [PollStatus]
|
121
110
|
# @return [Boolean]
|
@@ -130,14 +119,12 @@ module Deimos
|
|
130
119
|
Deimos.config.tracer&.finish(span)
|
131
120
|
status.batches_processed += 1
|
132
121
|
rescue Kafka::Error => e # keep trying till it fixes itself
|
133
|
-
span = set_error_and_retry(span, e)
|
134
122
|
Deimos.config.logger.error("Error publishing through DB Poller: #{e.message}")
|
135
123
|
sleep(0.5)
|
136
124
|
retry
|
137
125
|
rescue StandardError => e
|
138
126
|
Deimos.config.logger.error("Error publishing through DB poller: #{e.message}}")
|
139
127
|
if @config.retries.nil? || retries < @config.retries
|
140
|
-
span = set_error_and_retry(span, e)
|
141
128
|
retries += 1
|
142
129
|
sleep(0.5)
|
143
130
|
retry
|
data/lib/deimos/version.rb
CHANGED