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.
- checksums.yaml +7 -0
- data/lib/ymlex/argusyml.rb +8 -29
- 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
|
data/lib/ymlex/argusyml.rb
CHANGED
@@ -128,41 +128,14 @@ class ArgusYml
|
|
128
128
|
input
|
129
129
|
end
|
130
130
|
|
131
|
-
def dump_json dir_path
|
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
|
-
|
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.
|
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:
|
44
|
+
rubygems_version: 2.0.0.preview3.1
|
47
45
|
signing_key:
|
48
|
-
specification_version:
|
46
|
+
specification_version: 4
|
49
47
|
summary: extend ymal!
|
50
48
|
test_files: []
|
51
|
-
has_rdoc:
|