kennel 1.76.3 → 1.77.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Readme.md +1 -0
- data/lib/kennel/models/monitor.rb +11 -7
- data/lib/kennel/syncer.rb +2 -2
- data/lib/kennel/version.rb +1 -1
- data/template/Readme.md +1 -0
- 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: e6ac506da0670019c4f9bfeedda08ff728a0522b86a4e65356ef75b806ac1a33
|
4
|
+
data.tar.gz: e19bca2c80a775ba5a28a480b7b265246c0aa00699eec87147ef9d1b7725b603
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c29f4797475eb5f83eb7d3b5a35af710267eff90263764e0611f6d2bb52b75d3af34c3fdc7423e0945b2c0741c94bed3480152a17ef73b301877592d93c138c4
|
7
|
+
data.tar.gz: bbe104daf2fc7962fa95d94ce6b44b098ddd40461354717d99c0483f5672659a71ebaeaecaad32a28406161b8cd6ff726deefbf6986063b36e7eeb6e0edd60e5
|
data/Readme.md
CHANGED
@@ -210,6 +210,7 @@ To link to existing monitors via their kennel_id `projects kennel_id` + `:` + `m
|
|
210
210
|
- Screens `uptime` widgets can use `monitor: {id: "foo:bar"}`
|
211
211
|
- Screens `alert_graph` widgets can use `alert_id: "foo:bar"`
|
212
212
|
- Monitors `composite` can use `query: -> { "%{foo:bar} || %{foo:baz}" }`
|
213
|
+
- Slos can use `monitor_ids: -> ["foo:bar"]`
|
213
214
|
|
214
215
|
### Debugging changes locally
|
215
216
|
|
@@ -192,7 +192,7 @@ module Kennel
|
|
192
192
|
end
|
193
193
|
|
194
194
|
if type == "query alert"
|
195
|
-
# verify interval is
|
195
|
+
# verify interval is valid
|
196
196
|
interval = data.fetch(:query)[/\(last_(\S+?)\)/, 1]
|
197
197
|
if interval && !QUERY_INTERVALS.include?(interval)
|
198
198
|
invalid! "query interval was #{interval}, but must be one of #{QUERY_INTERVALS.join(", ")}"
|
@@ -200,13 +200,17 @@ module Kennel
|
|
200
200
|
end
|
201
201
|
|
202
202
|
if ["query alert", "service check"].include?(type) # TODO: most likely more types need this
|
203
|
-
# verify is_match uses available variables
|
203
|
+
# verify is_match/is_exact_match uses available variables
|
204
204
|
message = data.fetch(:message)
|
205
|
-
used = message.scan(/{{\s
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
205
|
+
used = message.scan(/{{\s*([#^]is(?:_exact)?_match)\s*([^\s}]+)/)
|
206
|
+
if used.any?
|
207
|
+
allowed = data.fetch(:query)[/by\s*[({]([^})]+)[})]/, 1]
|
208
|
+
.to_s.gsub(/["']/, "").split(/\s*,\s*/)
|
209
|
+
.map! { |w| %("#{w}.name") }
|
210
|
+
used.uniq.each do |match, group|
|
211
|
+
next if allowed.include?(group)
|
212
|
+
invalid! "#{match} used with #{group}, but can only be used with #{allowed.join(", ")}. Add more groupings or fix the #{match}"
|
213
|
+
end
|
210
214
|
end
|
211
215
|
end
|
212
216
|
end
|
data/lib/kennel/syncer.rb
CHANGED
@@ -38,7 +38,7 @@ module Kennel
|
|
38
38
|
end
|
39
39
|
|
40
40
|
def update
|
41
|
-
changed = (@create + @update).map { |_, e| e }
|
41
|
+
changed = (@create + @update).map { |_, e| e }
|
42
42
|
|
43
43
|
@create.each do |_, e|
|
44
44
|
e.resolve_linked_tracking_ids!({}, force: true)
|
@@ -188,7 +188,7 @@ module Kennel
|
|
188
188
|
end
|
189
189
|
|
190
190
|
# Do not add tracking-id when working with existing ids on a branch,
|
191
|
-
# so resource do not get deleted
|
191
|
+
# so resource do not get deleted from running an update on master (for example merge->CI).
|
192
192
|
# Also make sure the diff still makes sense, by kicking out the now noop-update.
|
193
193
|
#
|
194
194
|
# Note: ideally we'd never add tracking in the first place, but at that point we do not know the diff yet
|
data/lib/kennel/version.rb
CHANGED
data/template/Readme.md
CHANGED
@@ -192,6 +192,7 @@ To link to existing monitors via their kennel_id `projects kennel_id` + `:` + `m
|
|
192
192
|
- Screens `uptime` widgets can use `monitor: {id: "foo:bar"}`
|
193
193
|
- Screens `alert_graph` widgets can use `alert_id: "foo:bar"`
|
194
194
|
- Monitors `composite` can use `query: -> { "%{foo:bar} || %{foo:baz}" }`
|
195
|
+
- Slos can use `monitor_ids: -> ["foo:bar"]`
|
195
196
|
|
196
197
|
### Debugging changes locally
|
197
198
|
|
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.
|
4
|
+
version: 1.77.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: 2020-09
|
11
|
+
date: 2020-10-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|