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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ymlex/argusyml.rb +28 -28
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e9f11856130933a6430587a61d31657f166d5d2d
4
- data.tar.gz: c335533f3d41ef9aee376fe41757cd3274434d9f
3
+ metadata.gz: c8018b3351d992e2182d6bf75bf3a54823801bc0
4
+ data.tar.gz: 7365db545c0ce43cc21e85a2bfb3fff6c232f98e
5
5
  SHA512:
6
- metadata.gz: 57a829367210c7449af6689f9f7cdf75609af1d67732abe0270c10921928570da07bb2c060843502c98b1e380a113ff0561eab9e82004b6cf52bc29d889f3d28
7
- data.tar.gz: f0fcb3bff96c7fb1f139f9a8b2e90ba794d7179f03a5003eaa10e138339fdbfef1d8695ba90372cafa57a3dff66d66f91466f352eb9bdd39b7701912e64efb6e
6
+ metadata.gz: 74115ea70861e100ef264be157ff44069c387d7330e3c8ca10f028ea78f1fbc2883d2bc2e7ec87400c0648f97c365b168e84d3d4955dcc9bea33aee66ab38502
7
+ data.tar.gz: 9ac74eb08e5875b74034224e6effe934f104738bf3562421e210f90ca090f41096665a59ee050bae92c5eb6fac81adef03ec09e239c62c6c1718a510eb01c986
@@ -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 = "#{op_mail};#{mail}" if lvl != nil
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 = "300"
48
+ remind_time = "900"
50
49
  elsif lvl =~ /err/
51
- remind_time = "7200"
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"] || "300",
253
- "level" => other["level"] || "2",
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"] || "300",
285
- "level" => other["level"] || "2",
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"] || "300",
328
- "level" => other["level"] || "2",
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"] || "300",
360
- "level" => other["level"] || "2",
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"] || "300",
391
- "level" => other["level"] || "2",
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.8
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: 2014-08-01 00:00:00.000000000 Z
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