ymlex 1.1.3 → 1.1.4

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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/ymlex/argusyml.rb +8 -29
  3. metadata +6 -9
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: 73163cac01f7dc4bc74cb24fed3dfa698f2cda4b
4
+ data.tar.gz: bad5fe1ea61688707a906b56deab0e8d601c372f
5
+ !binary "U0hBNTEy":
6
+ metadata.gz: 42981f480ed643b3270683cd3d904aaadd441e2dcbeab3413a4365ac33401ae727f3b69b60febb9bae8e14d26d1560e5b3c6126ae35674f3481101db5460fd21
7
+ data.tar.gz: 1e13aacd99fed81284df37540d25b3e0b8d4e3fccb9d5629c96bcad0bd1f75317400029d9fd3f33946f467804145331c8f136074992e2869799b3ece88a0a893
@@ -128,41 +128,14 @@ class ArgusYml
128
128
  input
129
129
  end
130
130
 
131
- def dump_json dir_path, append_mode = true
131
+ def dump_json dir_path
132
132
 
133
133
  dir = "#{dir_path}/cluster/cluster.#{@name}.#{@product}.all"
134
134
  `mkdir -p #{dir}`
135
135
 
136
136
  # instance
137
137
  filename = "#{dir}/instance"
138
- if append_mode
139
- old_instance = nil
140
- begin
141
- File.open(filename,"r") do |f|
142
- old_instance = JSON.parse f.read
143
- end
144
- old_instance = empty if !old_instance
145
- rescue
146
- old_instance = empty
147
- end
148
- new_instance = {}
149
- ["raw","request","rule","alert"].each do |type|
150
- new_instance[type] = old_instance[type]
151
- next unless @instance[type]
152
- @instance[type].each do |new_item|
153
- idx = old_instance[type].find_index do |old_item|
154
- old_item["name"] == new_item["name"]
155
- end
156
- if idx
157
- new_instance[type][idx] = new_item
158
- else
159
- new_instance[type] << new_item
160
- end
161
- end
162
- end
163
- else
164
- new_instance = @instance
165
- end
138
+ new_instance = @instance
166
139
  File.open(filename,"w") do |f|
167
140
  f.puts JSON.pretty_generate new_instance
168
141
  end
@@ -203,10 +176,16 @@ class ArgusYml
203
176
  trans_log value
204
177
  when "aggr"
205
178
  trans_aggr value
179
+ when "derived"
180
+ trans_derived value
206
181
  end
207
182
  end
208
183
  end
209
184
 
185
+ def trans_derived list
186
+ @instance["derived"] = list
187
+ end
188
+
210
189
  def trans_aggr list
211
190
  list.each do | rule_name, value |
212
191
  @service_aggr << { "items" => value["items"],
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ymlex
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
5
- prerelease:
4
+ version: 1.1.4
6
5
  platform: ruby
7
6
  authors:
8
7
  - Wen Li
@@ -25,27 +24,25 @@ files:
25
24
  homepage: https://github.com/cruelwen/ymlex
26
25
  licenses:
27
26
  - MIT
27
+ metadata: {}
28
28
  post_install_message:
29
29
  rdoc_options: []
30
30
  require_paths:
31
31
  - lib
32
32
  required_ruby_version: !ruby/object:Gem::Requirement
33
- none: false
34
33
  requirements:
35
- - - ! '>='
34
+ - - ">="
36
35
  - !ruby/object:Gem::Version
37
36
  version: '0'
38
37
  required_rubygems_version: !ruby/object:Gem::Requirement
39
- none: false
40
38
  requirements:
41
- - - ! '>='
39
+ - - ">="
42
40
  - !ruby/object:Gem::Version
43
41
  version: '0'
44
42
  requirements: []
45
43
  rubyforge_project:
46
- rubygems_version: 1.8.23
44
+ rubygems_version: 2.0.0.preview3.1
47
45
  signing_key:
48
- specification_version: 3
46
+ specification_version: 4
49
47
  summary: extend ymal!
50
48
  test_files: []
51
- has_rdoc: