honeybadger 5.13.1 → 5.14.1

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
  SHA256:
3
- metadata.gz: 49f0e76e4da63a4398fcb71cc8fb153f5a854cd13a0d163924adc41473460401
4
- data.tar.gz: f8adacb9335c3d42f3fa2991eb05453551cb546b1d439e504fff32d5c41703b5
3
+ metadata.gz: 27b739832fcd4e8ae2b9599d80079f072bdbe2db1d8790a86bcc08f368be54bf
4
+ data.tar.gz: 3e3133dacf4749524276450c927a336544fc4d31ae0674f8fdfca17a5cb6311f
5
5
  SHA512:
6
- metadata.gz: e5022f0122bb51b147f6014e25f204250906b33c4e0e25c9699302e8e8a1bc97bad41497546f93c2d8cb9442de53d207309003699dfc55ae6190e14c2b110cff
7
- data.tar.gz: dc28062240092dd136fb22ccd54b45882e850a6982f13225924606ff4e7805451e12a9516a9deba75ee83c71d0f2fcae400c70df2be191d8d5b1b402c8a71365
6
+ metadata.gz: 186d0a1485cfc7e5584e63b84fb068b75dd87ee7f4fe4afd037e26cbf9ac5825d1df38d39b8e2ae3c65c42fc512b292cb1289156e676ab4b24af07769e6d2e4b
7
+ data.tar.gz: cf6c9735ce7d7533376f2863d443084fa5218052f1c7eaa5e74395ae293491857fd423509dab7f1aa3436cdb2c43b57f77a6f366b599f97c505ea38ae2f10d0f
data/CHANGELOG.md CHANGED
@@ -1,6 +1,40 @@
1
1
  # Change Log
2
2
 
3
3
 
4
+ ## [5.14.1](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.14.0...v5.14.1) (2024-07-15)
5
+
6
+
7
+ ### Bug Fixes
8
+
9
+ * do not serialize adapter object ([#586](https://github.com/honeybadger-io/honeybadger-ruby/issues/586)) ([f724ebf](https://github.com/honeybadger-io/honeybadger-ruby/commit/f724ebf0a2c3e2402c64448779cf7e6386de8b47))
10
+
11
+ ## [5.14.0](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.13.3...v5.14.0) (2024-07-11)
12
+
13
+
14
+ ### Features
15
+
16
+ * add --host and --ui_host flags to install command ([#584](https://github.com/honeybadger-io/honeybadger-ruby/issues/584)) ([5f171ba](https://github.com/honeybadger-io/honeybadger-ruby/commit/5f171badc0602df76a87e4caa0e06c9959648376))
17
+ * add ability to link to a custom domain after creating a notice ([#583](https://github.com/honeybadger-io/honeybadger-ruby/issues/583)) ([5b32b23](https://github.com/honeybadger-io/honeybadger-ruby/commit/5b32b231bb5562b3d97066e3a41f39de76b2f4a3))
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * squash warning about BigDecimal ([#578](https://github.com/honeybadger-io/honeybadger-ruby/issues/578)) ([47ff813](https://github.com/honeybadger-io/honeybadger-ruby/commit/47ff8130047b723b9d85be07b308c4883320eabb))
23
+
24
+ ## [5.13.3](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.13.2...v5.13.3) (2024-07-06)
25
+
26
+
27
+ ### Bug Fixes
28
+
29
+ * disable insights when loading rails console ([#580](https://github.com/honeybadger-io/honeybadger-ruby/issues/580)) ([94844bd](https://github.com/honeybadger-io/honeybadger-ruby/commit/94844bd72922f27ecf40453ef7c901433067688b))
30
+
31
+ ## [5.13.2](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.13.1...v5.13.2) (2024-07-03)
32
+
33
+
34
+ ### Bug Fixes
35
+
36
+ * buffer more and warn less ([#575](https://github.com/honeybadger-io/honeybadger-ruby/issues/575)) ([8e99e17](https://github.com/honeybadger-io/honeybadger-ruby/commit/8e99e17af65e8d0002e5e8204d5ded1cea891e86))
37
+
4
38
  ## [5.13.1](https://github.com/honeybadger-io/honeybadger-ruby/compare/v5.13.0...v5.13.1) (2024-07-01)
5
39
 
6
40
 
@@ -78,6 +78,10 @@ debug: false
78
78
  insights:
79
79
  enabled: #{options["insights"]}
80
80
  CONFIG
81
+ if (connection = options.slice("host", "ui_host")).any?
82
+ file.puts("\n# Override hosts\nconnection:")
83
+ connection.each {|k,v| file.puts(" #{k}: '#{v}'") }
84
+ end
81
85
  end
82
86
  end
83
87
 
@@ -49,6 +49,8 @@ WELCOME
49
49
 
50
50
  desc 'install API_KEY', 'Install Honeybadger into a new project'
51
51
  option :insights, type: :boolean, aliases: :'-i', default: false, desc: 'Enable Honeybadger Insights'
52
+ option :host, type: :string
53
+ option :ui_host, type: :string
52
54
  def install(api_key)
53
55
  Install.new(options, api_key).run
54
56
  rescue => e
@@ -93,7 +93,7 @@ module Honeybadger
93
93
  },
94
94
  :'events.max_queue_size' => {
95
95
  description: 'Maximum number of event for the event worker queue.',
96
- default: 10000,
96
+ default: 100000,
97
97
  type: Integer
98
98
  },
99
99
  :'events.batch_size' => {
@@ -166,6 +166,11 @@ module Honeybadger
166
166
  default: 'api.honeybadger.io'.freeze,
167
167
  type: String
168
168
  },
169
+ :'connection.ui_host' => {
170
+ description: 'The host to use when viewing data.',
171
+ default: 'app.honeybadger.io'.freeze,
172
+ type: String
173
+ },
169
174
  :'connection.port' => {
170
175
  description: 'The port to use when sending data.',
171
176
  default: nil,
@@ -39,13 +39,14 @@ module Honeybadger
39
39
  @pid = Process.pid
40
40
  @send_queue = []
41
41
  @last_sent = nil
42
+ @dropped_events = 0
42
43
  end
43
44
 
44
45
  def push(msg)
45
46
  return false unless start
46
47
 
47
48
  if queue.size >= config.events_max_queue_size
48
- warn { sprintf('Unable to send event; reached max queue size of %s.', queue.size) }
49
+ @dropped_events += 1
49
50
  return false
50
51
  end
51
52
 
@@ -207,7 +208,12 @@ module Honeybadger
207
208
  send_now(mutex.synchronize { send_queue })
208
209
  mutex.synchronize do
209
210
  @last_sent = Time.now
211
+ debug { sprintf('Sending %s events', send_queue.length) }
210
212
  send_queue.clear
213
+ if @dropped_events > 0
214
+ warn { sprintf('Dropped %s messages due to exceeding max queue size of %s', @dropped_events, config.events_max_queue_size) }
215
+ end
216
+ @dropped_events = 0
211
217
  end
212
218
  end
213
219
 
@@ -32,6 +32,10 @@ module Honeybadger
32
32
  config.after_initialize do
33
33
  Honeybadger.load_plugins!
34
34
  end
35
+
36
+ console do
37
+ Honeybadger::Agent.instance.config[:'insights.enabled'] = false unless Honeybadger::Agent.instance.config.env.has_key?(:'insights.enabled')
38
+ end
35
39
  end
36
40
  end
37
41
  end
@@ -74,8 +74,10 @@ module Honeybadger
74
74
  class ActiveJobSubscriber < NotificationSubscriber
75
75
  def format_payload(payload)
76
76
  job = payload[:job]
77
- payload.except(:job).merge({
78
- job_class: job.class,
77
+ adapter = payload[:adapter]
78
+ payload.except(:job, :adapter).merge({
79
+ adapter_class: adapter.class.to_s,
80
+ job_class: job.class.to_s,
79
81
  job_id: job.job_id,
80
82
  queue_name: job.queue_name
81
83
  })
@@ -87,7 +89,7 @@ module Honeybadger
87
89
 
88
90
  def format_payload(payload)
89
91
  {
90
- job_class: payload[:job].class,
92
+ job_class: payload[:job].class.to_s,
91
93
  queue_name: payload[:job].queue_name
92
94
  }
93
95
  end
@@ -1,4 +1,3 @@
1
- require 'bigdecimal'
2
1
  require 'set'
3
2
 
4
3
  require 'honeybadger/conversions'
@@ -21,7 +20,7 @@ module Honeybadger
21
20
  RECURSION = '[RECURSION]'.freeze
22
21
  TRUNCATED = '[TRUNCATED]'.freeze
23
22
 
24
- IMMUTABLE = [NilClass, FalseClass, TrueClass, Symbol, Numeric, BigDecimal, Method].freeze
23
+ IMMUTABLE = [NilClass, FalseClass, TrueClass, Symbol, Numeric, Method].freeze
25
24
 
26
25
  MAX_STRING_SIZE = 65536
27
26
 
@@ -1,4 +1,4 @@
1
1
  module Honeybadger
2
2
  # The current String Honeybadger version.
3
- VERSION = '5.13.1'.freeze
3
+ VERSION = '5.14.1'.freeze
4
4
  end
@@ -226,10 +226,11 @@ module Honeybadger
226
226
  when 413
227
227
  warn { sprintf('Error report failed: Payload is too large. id=%s code=%s', msg.id, response.code) }
228
228
  when 201
229
+ host = config.get(:'connection.ui_host')
229
230
  if throttle = dec_throttle
230
- info { sprintf('Success ⚡ https://app.honeybadger.io/notice/%s id=%s code=%s throttle=%s interval=%s', msg.id, msg.id, response.code, throttle, throttle_interval) }
231
+ info { sprintf('Success ⚡ https://#{host}/notice/%s id=%s code=%s throttle=%s interval=%s', msg.id, msg.id, response.code, throttle, throttle_interval) }
231
232
  else
232
- info { sprintf('Success ⚡ https://app.honeybadger.io/notice/%s id=%s code=%s', msg.id, msg.id, response.code) }
233
+ info { sprintf('Success ⚡ https://#{host}/notice/%s id=%s code=%s', msg.id, msg.id, response.code) }
233
234
  end
234
235
  when :stubbed
235
236
  info { sprintf('Success ⚡ Development mode is enabled; this error will be reported if it occurs after you deploy your app. id=%s', msg.id) }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: honeybadger
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.13.1
4
+ version: 5.14.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Honeybadger Industries LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-07-01 00:00:00.000000000 Z
11
+ date: 2024-07-15 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Make managing application errors a more pleasant experience.
14
14
  email: