gazer 0.3.0 → 0.3.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/CHANGELOG.md +14 -0
- data/Gemfile.lock +1 -1
- data/lib/gzr/cli.rb +4 -1
- data/lib/gzr/command.rb +73 -1
- data/lib/gzr/commands/alert/cat.rb +52 -0
- data/lib/gzr/commands/alert/chown.rb +48 -0
- data/lib/gzr/commands/alert/delete.rb +47 -0
- data/lib/gzr/commands/alert/disable.rb +48 -0
- data/lib/gzr/commands/alert/enable.rb +47 -0
- data/lib/gzr/commands/alert/follow.rb +47 -0
- data/lib/gzr/commands/alert/import.rb +65 -0
- data/lib/gzr/commands/alert/ls.rb +76 -0
- data/lib/gzr/commands/alert/notifications.rb +74 -0
- data/lib/gzr/commands/alert/read.rb +49 -0
- data/lib/gzr/commands/alert/threshold.rb +48 -0
- data/lib/gzr/commands/alert/unfollow.rb +47 -0
- data/lib/gzr/commands/alert.rb +200 -0
- data/lib/gzr/commands/dashboard/cat.rb +2 -1
- data/lib/gzr/commands/dashboard/import.rb +12 -1
- data/lib/gzr/commands/dashboard.rb +3 -1
- data/lib/gzr/commands/folder/export.rb +2 -0
- data/lib/gzr/commands/folder.rb +2 -0
- data/lib/gzr/commands/look/cat.rb +1 -0
- data/lib/gzr/commands/look.rb +2 -0
- data/lib/gzr/modules/alert.rb +169 -0
- data/lib/gzr/modules/dashboard.rb +89 -1
- data/lib/gzr/modules/look.rb +18 -1
- data/lib/gzr/version.rb +1 -1
- metadata +16 -2
@@ -1,6 +1,6 @@
|
|
1
1
|
# The MIT License (MIT)
|
2
2
|
|
3
|
-
# Copyright (c)
|
3
|
+
# Copyright (c) 2023 Mike DeAngelo Google, Inc.
|
4
4
|
|
5
5
|
# Permission is hereby granted, free of charge, to any person obtaining a copy of
|
6
6
|
# this software and associated documentation files (the "Software"), to deal in
|
@@ -20,9 +20,12 @@
|
|
20
20
|
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
21
21
|
|
22
22
|
# frozen_string_literal: true
|
23
|
+
require_relative 'alert'
|
23
24
|
|
24
25
|
module Gzr
|
25
26
|
module Dashboard
|
27
|
+
include Gzr::Alert
|
28
|
+
|
26
29
|
def query_dashboard(dashboard_id)
|
27
30
|
data = nil
|
28
31
|
begin
|
@@ -249,6 +252,17 @@ module Gzr
|
|
249
252
|
rewrite_color_palette!(o,default_colors)
|
250
253
|
end
|
251
254
|
end
|
255
|
+
alerts = search_alerts(fields: 'id,dashboard_element_id', group_by: 'dashboard', all_owners: true)
|
256
|
+
alerts.map!{|v| v.to_attrs}
|
257
|
+
say_warning alerts if @options[:debug]
|
258
|
+
data[:dashboard_elements].each do |e|
|
259
|
+
alerts_found = alerts.select { |a| a[:dashboard_element_id] == e[:id]}
|
260
|
+
say_warning "Found alerts #{alerts_found}" if @options[:debug]
|
261
|
+
alerts_entries = alerts_found.map { |a| get_alert(a[:id]).to_attrs }
|
262
|
+
say_warning "Looked up alerts entries #{alerts_entries}" if @options[:debug]
|
263
|
+
e[:alerts] = alerts_entries
|
264
|
+
end
|
265
|
+
|
252
266
|
merge_result = merge_query(element[:merge_result_id])&.to_attrs if element[:merge_result_id]
|
253
267
|
if merge_result
|
254
268
|
merge_result[:source_queries].each_index do |j|
|
@@ -266,5 +280,79 @@ module Gzr
|
|
266
280
|
data[:scheduled_plans] = query_scheduled_plans_for_dashboard(@dashboard_id,"all") if @options[:plans]
|
267
281
|
data
|
268
282
|
end
|
283
|
+
|
284
|
+
def trim_dashboard(data)
|
285
|
+
trimmed = data.select do |k,v|
|
286
|
+
(keys_to_keep('update_dashboard') + [:id,:dashboard_elements,:dashboard_filters,:dashboard_layouts,:scheduled_plans]).include? k
|
287
|
+
end
|
288
|
+
|
289
|
+
trimmed[:dashboard_elements] = data[:dashboard_elements].map do |de|
|
290
|
+
new_de = de.select do |k,v|
|
291
|
+
(keys_to_keep('update_dashboard_element') + [:id,:look,:query,:merge_result,:alerts]).include? k
|
292
|
+
end
|
293
|
+
if de[:look]
|
294
|
+
new_de[:look] = de[:look].select do |k,v|
|
295
|
+
(keys_to_keep('update_look') + [:id,:query]).include? k
|
296
|
+
end
|
297
|
+
if de[:look][:query]
|
298
|
+
new_de[:look][:query] = de[:look][:query].select do |k,v|
|
299
|
+
(keys_to_keep('create_query') + [:id]).include? k
|
300
|
+
end
|
301
|
+
end
|
302
|
+
end
|
303
|
+
if de[:query]
|
304
|
+
new_de[:query] = de[:query].select do |k,v|
|
305
|
+
(keys_to_keep('create_query') + [:id]).include? k
|
306
|
+
end
|
307
|
+
end
|
308
|
+
if de[:merge_result]
|
309
|
+
new_de[:merge_result] = de[:merge_result].select do |k,v|
|
310
|
+
(keys_to_keep('update_merge_query') + [:id]).include? k
|
311
|
+
end
|
312
|
+
new_de[:merge_result][:source_queries] = de[:merge_result][:source_queries].map do |sq|
|
313
|
+
sq.select do |k,v|
|
314
|
+
(keys_to_keep('create_query') + [:id]).include? k
|
315
|
+
end
|
316
|
+
end
|
317
|
+
end
|
318
|
+
if de[:alerts]
|
319
|
+
new_de[:alerts] = de[:alerts].map do |a|
|
320
|
+
a.select do |k,v|
|
321
|
+
(keys_to_keep('update_alert') + [:id,:owner]).include? k
|
322
|
+
end
|
323
|
+
end
|
324
|
+
end
|
325
|
+
new_de
|
326
|
+
end
|
327
|
+
|
328
|
+
trimmed[:dashboard_filters] = data[:dashboard_filters].map do |df|
|
329
|
+
new_df = df.select do |k,v|
|
330
|
+
keys_to_keep('update_dashboard_filter').include? k
|
331
|
+
end
|
332
|
+
new_df
|
333
|
+
end
|
334
|
+
|
335
|
+
trimmed[:dashboard_layouts] = data[:dashboard_layouts].map do |dl|
|
336
|
+
new_dl = dl.select do |k,v|
|
337
|
+
(keys_to_keep('update_dashboard_layout') + [:id]).include? k
|
338
|
+
end
|
339
|
+
if dl[:dashboard_layout_components]
|
340
|
+
new_dl[:dashboard_layout_components] = dl[:dashboard_layout_components].map do |dlc|
|
341
|
+
dlc.select do |k,v|
|
342
|
+
(keys_to_keep('update_dashboard_layout_component') + [:id]).include? k
|
343
|
+
end
|
344
|
+
end
|
345
|
+
end
|
346
|
+
new_dl
|
347
|
+
end
|
348
|
+
|
349
|
+
trimmed[:scheduled_plans] = data[:scheduled_plans].map do |sp|
|
350
|
+
sp.select do |k,v|
|
351
|
+
(keys_to_keep('create_scheduled_plan') + [:id]).include? k
|
352
|
+
end
|
353
|
+
end if data[:scheduled_plans]
|
354
|
+
|
355
|
+
trimmed
|
356
|
+
end
|
269
357
|
end
|
270
358
|
end
|
data/lib/gzr/modules/look.rb
CHANGED
@@ -198,8 +198,25 @@ module Gzr
|
|
198
198
|
end
|
199
199
|
end
|
200
200
|
|
201
|
-
data[:scheduled_plans] = query_scheduled_plans_for_look(@look_id,"all")
|
201
|
+
data[:scheduled_plans] = query_scheduled_plans_for_look(@look_id,"all").map { |e| e.to_attrs } if @options[:plans]
|
202
202
|
data
|
203
203
|
end
|
204
|
+
|
205
|
+
def trim_look(data)
|
206
|
+
trimmed = data.select do |k,v|
|
207
|
+
(keys_to_keep('update_look') + [:id,:query]).include? k
|
208
|
+
end
|
209
|
+
trimmed[:query] = data[:query].select do |k,v|
|
210
|
+
(keys_to_keep('create_query') + [:id]).include? k
|
211
|
+
end
|
212
|
+
|
213
|
+
trimmed[:scheduled_plans] = data[:scheduled_plans].map do |sp|
|
214
|
+
sp.select do |k,v|
|
215
|
+
(keys_to_keep('create_scheduled_plan') + [:id]).include? k
|
216
|
+
end
|
217
|
+
end if data[:scheduled_plans]
|
218
|
+
|
219
|
+
trimmed
|
220
|
+
end
|
204
221
|
end
|
205
222
|
end
|
data/lib/gzr/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gazer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike DeAngelo
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-04-
|
11
|
+
date: 2023-04-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: tty-reader
|
@@ -269,6 +269,19 @@ files:
|
|
269
269
|
- lib/gzr/cli.rb
|
270
270
|
- lib/gzr/command.rb
|
271
271
|
- lib/gzr/commands/.gitkeep
|
272
|
+
- lib/gzr/commands/alert.rb
|
273
|
+
- lib/gzr/commands/alert/cat.rb
|
274
|
+
- lib/gzr/commands/alert/chown.rb
|
275
|
+
- lib/gzr/commands/alert/delete.rb
|
276
|
+
- lib/gzr/commands/alert/disable.rb
|
277
|
+
- lib/gzr/commands/alert/enable.rb
|
278
|
+
- lib/gzr/commands/alert/follow.rb
|
279
|
+
- lib/gzr/commands/alert/import.rb
|
280
|
+
- lib/gzr/commands/alert/ls.rb
|
281
|
+
- lib/gzr/commands/alert/notifications.rb
|
282
|
+
- lib/gzr/commands/alert/read.rb
|
283
|
+
- lib/gzr/commands/alert/threshold.rb
|
284
|
+
- lib/gzr/commands/alert/unfollow.rb
|
272
285
|
- lib/gzr/commands/attribute.rb
|
273
286
|
- lib/gzr/commands/attribute/cat.rb
|
274
287
|
- lib/gzr/commands/attribute/create.rb
|
@@ -335,6 +348,7 @@ files:
|
|
335
348
|
- lib/gzr/commands/user/enable.rb
|
336
349
|
- lib/gzr/commands/user/ls.rb
|
337
350
|
- lib/gzr/commands/user/me.rb
|
351
|
+
- lib/gzr/modules/alert.rb
|
338
352
|
- lib/gzr/modules/attribute.rb
|
339
353
|
- lib/gzr/modules/connection.rb
|
340
354
|
- lib/gzr/modules/dashboard.rb
|