ymlex 1.1.8 → 1.1.9.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ymlex/argusyml.rb +28 -28
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c8018b3351d992e2182d6bf75bf3a54823801bc0
|
4
|
+
data.tar.gz: 7365db545c0ce43cc21e85a2bfb3fff6c232f98e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74115ea70861e100ef264be157ff44069c387d7330e3c8ca10f028ea78f1fbc2883d2bc2e7ec87400c0648f97c365b168e84d3d4955dcc9bea33aee66ab38502
|
7
|
+
data.tar.gz: 9ac74eb08e5875b74034224e6effe934f104738bf3562421e210f90ca090f41096665a59ee050bae92c5eb6fac81adef03ec09e239c62c6c1718a510eb01c986
|
data/lib/ymlex/argusyml.rb
CHANGED
@@ -10,7 +10,6 @@ class Alert
|
|
10
10
|
def initialize contacts, level={}
|
11
11
|
@contacts = contacts
|
12
12
|
@default_level = { "oncall" => "#z_ecomop_maop_oncall",
|
13
|
-
"op_mail" => "ma-op",
|
14
13
|
"manager" => "g_ecomop_maop_manager",
|
15
14
|
"rd" => "err",
|
16
15
|
"op" => "warn",
|
@@ -21,7 +20,6 @@ class Alert
|
|
21
20
|
level = @default_level.merge(lvl)
|
22
21
|
oncall = level["oncall"]
|
23
22
|
manager = level["manager"]
|
24
|
-
op_mail = level["op_mail"]
|
25
23
|
|
26
24
|
# # change g_ecomop_maop_all to #z_ecomop_maop_oncall_bak
|
27
25
|
# if @contacts["op"] != nil
|
@@ -31,6 +29,7 @@ class Alert
|
|
31
29
|
mail = ""
|
32
30
|
sms = ""
|
33
31
|
hi = ""
|
32
|
+
web = ""
|
34
33
|
level.each do |role, lvl|
|
35
34
|
if ["op","rd","qa"].include? role
|
36
35
|
mail = "#{@contacts[role]};#{mail}" if lvl != nil
|
@@ -40,15 +39,15 @@ class Alert
|
|
40
39
|
end
|
41
40
|
end
|
42
41
|
lvl = level["op"]
|
43
|
-
mail = "#{
|
42
|
+
mail = "#{mail}" if lvl != nil
|
44
43
|
sms = "#{oncall};#{sms}" if lvl =~ /err/ or lvl =~ /fatal/
|
45
44
|
sms = "#{manager};#{sms}" if lvl =~ /fatal/
|
46
45
|
#hi = "#{oncall}" if lvl =~ /warn/
|
47
46
|
|
48
47
|
if lvl =~ /fatal/
|
49
|
-
remind_time = "
|
48
|
+
remind_time = "900"
|
50
49
|
elsif lvl =~ /err/
|
51
|
-
remind_time = "
|
50
|
+
remind_time = "0"
|
52
51
|
else
|
53
52
|
remind_time = "0"
|
54
53
|
end
|
@@ -70,7 +69,9 @@ class Alert
|
|
70
69
|
rule_level = "1"
|
71
70
|
end
|
72
71
|
|
72
|
+
web = "g_ecomop_maop_all;g_ecomop_maop_manager;" if sms.include? "g_ecomop_maop_all" or sms.include? "#z_ecomop_maop_oncall"
|
73
73
|
sms.gsub!(/g_ecomop_maop_all/,'#z_ecomop_maop_oncall;#z_ecomop_maop_oncall_bak')
|
74
|
+
mail.gsub!(/g_ecomop_maop_all/,'ma-op')
|
74
75
|
alt = {
|
75
76
|
"max_alert_times" => level["max_alert_times"] || "1",
|
76
77
|
"alert_threshold_percent" => level["alert_threshold_percent"] || "0",
|
@@ -79,19 +80,13 @@ class Alert
|
|
79
80
|
"other" => {
|
80
81
|
"merge_window" => merge_window,
|
81
82
|
"level" => rule_level,
|
83
|
+
"lvl" => lvl,
|
82
84
|
},
|
83
85
|
"mail" => mail,
|
84
86
|
"sms" => sms,
|
85
87
|
"hi" => hi,
|
88
|
+
"web" => web,
|
86
89
|
}
|
87
|
-
if lvl =~ /err/
|
88
|
-
alt["level1_upgrade_interval"] = "10800"
|
89
|
-
alt["level1_upgrade_sms"] = @contacts["op"].gsub(/g_ecomop_maop_all/,'#z_ecomop_maop_oncall;#z_ecomop_maop_oncall_bak')
|
90
|
-
if manager != ""
|
91
|
-
alt["level2_upgrade_interval"] = "36000"
|
92
|
-
alt["level2_upgrade_sms"] = manager
|
93
|
-
end
|
94
|
-
end
|
95
90
|
if lvl =~ /fatal/ and manager != ""
|
96
91
|
alt["level1_upgrade_interval"] = "900"
|
97
92
|
alt["level1_upgrade_sms"] = "#{manager};#{@contacts['op']}".gsub(/g_ecomop_maop_all/,'#z_ecomop_maop_oncall;#z_ecomop_maop_oncall_bak')
|
@@ -238,6 +233,7 @@ class ArgusYml
|
|
238
233
|
if value["formula"]
|
239
234
|
rule_name = "#{@name}_aggr_#{rule_name}"
|
240
235
|
alert_name = "default_alert"
|
236
|
+
other = default_alert_level
|
241
237
|
if value["alert"]
|
242
238
|
alt = @alert.get_alert value["alert"]
|
243
239
|
alt["name"] = rule_name
|
@@ -245,12 +241,11 @@ class ArgusYml
|
|
245
241
|
@service_alert << alt
|
246
242
|
alert_name = rule_name
|
247
243
|
end
|
248
|
-
other = other || {}
|
249
244
|
@service_rule << { "name" => rule_name,
|
250
245
|
"formula" => value["formula"],
|
251
246
|
"filter" => value["filter"] || "1/1",
|
252
|
-
"merge_window" => other["merge_window"]
|
253
|
-
"level" => other["level"]
|
247
|
+
"merge_window" => other["merge_window"],
|
248
|
+
"level" => other["level"],
|
254
249
|
"alert" => alert_name }
|
255
250
|
end
|
256
251
|
end
|
@@ -270,6 +265,7 @@ class ArgusYml
|
|
270
265
|
list.each do | rule_key, rule_value |
|
271
266
|
rule_name = "#{@name}_other_#{rule_key}"
|
272
267
|
alert_name = "default_alert"
|
268
|
+
other = default_alert_level
|
273
269
|
if rule_value["alert"]
|
274
270
|
alt = @alert.get_alert rule_value["alert"]
|
275
271
|
alt["name"] = rule_name
|
@@ -277,12 +273,11 @@ class ArgusYml
|
|
277
273
|
@instance["alert"] << alt
|
278
274
|
alert_name = rule_name
|
279
275
|
end
|
280
|
-
other = other || {}
|
281
276
|
@instance["rule"] << { "name" => rule_name,
|
282
277
|
"formula" => rule_value["formula"],
|
283
278
|
"filter" => rule_value["filter"] || "1/1",
|
284
|
-
"merge_window" => other["merge_window"]
|
285
|
-
"level" => other["level"]
|
279
|
+
"merge_window" => other["merge_window"],
|
280
|
+
"level" => other["level"],
|
286
281
|
"alert" => alert_name }
|
287
282
|
end
|
288
283
|
end
|
@@ -313,6 +308,7 @@ class ArgusYml
|
|
313
308
|
log_conf["item"] << item
|
314
309
|
next unless raw_value["formula"]
|
315
310
|
alert_name = "default_alert"
|
311
|
+
other = default_alert_level
|
316
312
|
if raw_value["alert"]
|
317
313
|
alt = @alert.get_alert raw_value["alert"]
|
318
314
|
alt["name"] = item_name_prefix
|
@@ -320,12 +316,11 @@ class ArgusYml
|
|
320
316
|
@instance["alert"] << alt
|
321
317
|
alert_name = item_name_prefix
|
322
318
|
end
|
323
|
-
other = other || {}
|
324
319
|
@instance["rule"] << { "name" => item_name_prefix,
|
325
320
|
"formula" => raw_value["formula"],
|
326
321
|
"filter" => raw_value["filter"] || "1/1",
|
327
|
-
"merge_window" => other["merge_window"]
|
328
|
-
"level" => other["level"]
|
322
|
+
"merge_window" => other["merge_window"],
|
323
|
+
"level" => other["level"],
|
329
324
|
"alert" => alert_name,
|
330
325
|
}
|
331
326
|
end
|
@@ -345,6 +340,7 @@ class ArgusYml
|
|
345
340
|
next if (rule_key == "path" || !rule_value["formula"])
|
346
341
|
rule_name = "#{raw_name}_#{rule_key}"
|
347
342
|
alert_name = "default_alert"
|
343
|
+
other = default_alert_level
|
348
344
|
if rule_value["alert"]
|
349
345
|
alt = @alert.get_alert rule_value["alert"]
|
350
346
|
alt["name"] = rule_name
|
@@ -352,12 +348,11 @@ class ArgusYml
|
|
352
348
|
@instance["alert"] << alt
|
353
349
|
alert_name = rule_name
|
354
350
|
end
|
355
|
-
other = other || {}
|
356
351
|
@instance["rule"] << { "name" => rule_name,
|
357
352
|
"formula" => rule_value["formula"],
|
358
353
|
"filter" => rule_value["filter"]||"3/3",
|
359
|
-
"merge_window" => other["merge_window"]
|
360
|
-
"level" => other["level"]
|
354
|
+
"merge_window" => other["merge_window"],
|
355
|
+
"level" => other["level"],
|
361
356
|
"alert" => alert_name }
|
362
357
|
end
|
363
358
|
end
|
@@ -374,6 +369,7 @@ class ArgusYml
|
|
374
369
|
"req_type" => "port",
|
375
370
|
}
|
376
371
|
alert_name = "default_alert"
|
372
|
+
other = default_alert_level
|
377
373
|
if raw_value["alert"]
|
378
374
|
alt = @alert.get_alert raw_value["alert"]
|
379
375
|
alt["name"] = raw_name
|
@@ -382,13 +378,12 @@ class ArgusYml
|
|
382
378
|
alert_name = raw_name
|
383
379
|
raw_value.delete "alert"
|
384
380
|
end
|
385
|
-
other = other || {}
|
386
381
|
@instance["request"] << dft_raw.merge(raw_value)
|
387
382
|
@instance["rule"] << { "name" => raw_name,
|
388
383
|
"formula" => "#{raw_name} != 'ok'",
|
389
384
|
"filter" => raw_value["filter"]||"3/3",
|
390
|
-
"merge_window" => other["merge_window"]
|
391
|
-
"level" => other["level"]
|
385
|
+
"merge_window" => other["merge_window"],
|
386
|
+
"level" => other["level"],
|
392
387
|
"alert" => alert_name }
|
393
388
|
end
|
394
389
|
end
|
@@ -411,6 +406,11 @@ class ArgusYml
|
|
411
406
|
alt
|
412
407
|
end
|
413
408
|
|
409
|
+
def default_alert_level
|
410
|
+
alt = @alert.get_alert
|
411
|
+
alt["other"]
|
412
|
+
end
|
413
|
+
|
414
414
|
def noah_error_alert
|
415
415
|
alt = @alert.get_alert({"rd" => nil, "qa" => nil, "op" => "warn" })
|
416
416
|
alt["name"] = "noah_error_alert"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ymlex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Wen Li
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-10-27 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: 'extend ymal: support inherit and valueize'
|
14
14
|
email: wenli@baidu.com
|