kennel 1.144.1 → 1.145.0

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: 5bf4216bfa5c2ae40c29b50d3891a8fe7c08d6a2f75229a923c28991d4537d39
4
- data.tar.gz: 2a36e4b94db5a0c41ed1d1b1986f52938b564a80cc887e5cd7fbe76bbb480185
3
+ metadata.gz: ed091ba0fa4fda310e5444a6e01fd21cf03f2b19dee5c7d4b0988a61855ca28e
4
+ data.tar.gz: 8a720d21972b01c5863722bf56834eccbcaf91ebcd949512142239afa364ec77
5
5
  SHA512:
6
- metadata.gz: 71d0cde39adf53dcd3d77460be78c6cb08ea3f9bb4f44d08e7a50d86fba3058f9fc47fdc51574262de3357dce9e81d8d7b8d102f139683dae76b0bc04547262a
7
- data.tar.gz: 6fd4919a07e88a14eca5c14931f77ee08ec0bdfc3be6f446707c9e29aca4aad9b68ca9bbad3cc550e410c89bfaec51d2b9929de720ce9aab7a21a732339b5fa9
6
+ metadata.gz: e478b0fea488349ef09f1402f146d5d1383849f292b34fd9575378abdb547d1de00124f9063a0e4dab5f80749470013d22416198db912723cd23e2588ffdf2dc
7
+ data.tar.gz: f64c88e17f5b1e016c8e8503b9e098bdaf56167b5d9084c4245199bad52fd142253b9f672647597fb24c0dd4b798c1382f9b45eeaaf1cdc76c4cc04fdeb70956
@@ -4,7 +4,6 @@ module Kennel
4
4
  class Monitor < Record
5
5
  include TagsValidation
6
6
 
7
- RENOTIFY_INTERVALS = [0, 10, 20, 30, 40, 50, 60, 90, 120, 180, 240, 300, 360, 720, 1440].freeze # minutes
8
7
  OPTIONAL_SERVICE_CHECK_THRESHOLDS = [:ok, :warning].freeze
9
8
  READONLY_ATTRIBUTES = superclass::READONLY_ATTRIBUTES + [
10
9
  :multi, :matching_downtimes, :overall_state_modified, :overall_state, :restricted_roles
@@ -61,7 +60,8 @@ module Kennel
61
60
  variables: -> { MONITOR_OPTION_DEFAULTS.fetch(:variables) },
62
61
  on_missing_data: -> { MONITOR_OPTION_DEFAULTS.fetch(:on_missing_data) },
63
62
  notification_preset_name: -> { MONITOR_OPTION_DEFAULTS.fetch(:notification_preset_name) },
64
- notify_by: -> { MONITOR_OPTION_DEFAULTS.fetch(:notify_by) }
63
+ notify_by: -> { MONITOR_OPTION_DEFAULTS.fetch(:notify_by) },
64
+ require_full_window: -> { false }
65
65
  )
66
66
 
67
67
  def build_json
@@ -206,7 +206,7 @@ module Kennel
206
206
  # fields are not returned when set to true
207
207
  if ["service check", "event alert"].include?(actual[:type])
208
208
  options[:include_tags] = true unless options.key?(:include_tags)
209
- options[:require_full_window] = true unless options.key?(:require_full_window)
209
+ options[:require_full_window] = false unless options.key?(:require_full_window)
210
210
  end
211
211
 
212
212
  case actual[:type]
@@ -219,6 +219,7 @@ module Kennel
219
219
  OPTIONAL_SERVICE_CHECK_THRESHOLDS.each do |t|
220
220
  options[:thresholds][t] ||= 1
221
221
  end
222
+ else # do nothing
222
223
  end
223
224
 
224
225
  # nil / "" / 0 are not returned from the api when set via the UI
@@ -234,12 +235,6 @@ module Kennel
234
235
 
235
236
  private
236
237
 
237
- def require_full_window
238
- # default 'on_average', 'at_all_times', 'in_total' aggregations to true, otherwise false
239
- # https://docs.datadoghq.com/ap/#create-a-monitor
240
- type != "query alert" || query.start_with?("avg", "min", "sum")
241
- end
242
-
243
238
  def validate_json(data)
244
239
  super
245
240
 
@@ -261,11 +256,6 @@ module Kennel
261
256
  end
262
257
  end
263
258
 
264
- # verify renotify interval is valid
265
- unless RENOTIFY_INTERVALS.include? data.dig(:options, :renotify_interval)
266
- invalid! :invalid_renotify_interval, "renotify_interval must be one of #{RENOTIFY_INTERVALS.join(", ")}"
267
- end
268
-
269
259
  if ["query alert", "service check"].include?(type) # TODO: most likely more types need this
270
260
  validate_message_variables(data)
271
261
  end
@@ -364,6 +354,7 @@ module Kennel
364
354
  "Warning threshold (#{warning}) must be less than the alert threshold (#{critical}) with > comparison"
365
355
  )
366
356
  end
357
+ else # do nothing
367
358
  end
368
359
  end
369
360
  end
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Kennel
3
- VERSION = "1.144.1"
3
+ VERSION = "1.145.0"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kennel
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.144.1
4
+ version: 1.145.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Grosser
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-21 00:00:00.000000000 Z
11
+ date: 2023-10-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: diff-lcs