fluent-plugin-juniper-telemetry 0.2.8 → 0.2.9
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.
- data/lib/fluent/plugin/parser_juniper_jti.rb +25 -14
- metadata +2 -2
@@ -40,13 +40,14 @@ module Fluent
|
|
40
40
|
begin
|
41
41
|
jnpr_sensor = jti_msg.enterprise.juniperNetworks
|
42
42
|
datas_sensors = JSON.parse(jnpr_sensor.to_json)
|
43
|
-
$log.debug "Extract sensor data from
|
44
|
-
rescue
|
45
|
-
$log.warn "Unable to extract sensor data sensor from jti_msg.enterprise.juniperNetworks,
|
43
|
+
$log.debug "Extract sensor data from #{device_name} with output #{output_format}"
|
44
|
+
rescue => e
|
45
|
+
$log.warn "Unable to extract sensor data sensor from jti_msg.enterprise.juniperNetworks, Error during processing: #{$!}"
|
46
46
|
$log.debug "Unable to extract sensor data sensor from jti_msg.enterprise.juniperNetworks, Data Dump : " + jti_msg.inspect.to_s
|
47
47
|
return
|
48
48
|
end
|
49
49
|
|
50
|
+
|
50
51
|
## Go over each Sensor
|
51
52
|
datas_sensors.each do |sensor, s_data|
|
52
53
|
|
@@ -87,13 +88,14 @@ module Fluent
|
|
87
88
|
data.each do |queue|
|
88
89
|
|
89
90
|
## Create local copy to avoid variable sharing
|
90
|
-
|
91
|
+
queue_sensor_data = sensor_data.dup
|
91
92
|
|
92
93
|
## Save and Cleanup Queue number
|
93
|
-
|
94
|
+
queue_sensor_data.push({ 'egress_queue' => queue['queue_number'] })
|
94
95
|
queue.delete("queue_number")
|
95
96
|
|
96
97
|
queue.each do |type,value|
|
98
|
+
local_sensor_data = queue_sensor_data.dup
|
97
99
|
local_sensor_data.push({ 'type' => section + '.' + type })
|
98
100
|
local_sensor_data.push({ 'value' => value })
|
99
101
|
|
@@ -115,8 +117,8 @@ module Fluent
|
|
115
117
|
end
|
116
118
|
end
|
117
119
|
end
|
118
|
-
rescue
|
119
|
-
$log.warn "Unable to parse " + sensor + " sensor,
|
120
|
+
rescue => e
|
121
|
+
$log.warn "Unable to parse " + sensor + " sensor, Error during processing: #{$!}"
|
120
122
|
$log.debug "Unable to parse " + sensor + " sensor, Data Dump : " + datas.inspect.to_s
|
121
123
|
end
|
122
124
|
end
|
@@ -179,8 +181,8 @@ module Fluent
|
|
179
181
|
|
180
182
|
end
|
181
183
|
end
|
182
|
-
rescue
|
183
|
-
$log.warn "Unable to parse " + sensor + " sensor,
|
184
|
+
rescue => e
|
185
|
+
$log.warn "Unable to parse " + sensor + " sensor, Error during processing: #{$!}"
|
184
186
|
$log.debug "Unable to parse " + sensor + " sensor, Data Dump : " + datas.inspect.to_s
|
185
187
|
end
|
186
188
|
end
|
@@ -191,9 +193,14 @@ module Fluent
|
|
191
193
|
end
|
192
194
|
end
|
193
195
|
|
196
|
+
##############################
|
197
|
+
## Supporting functions ##
|
198
|
+
##############################
|
194
199
|
def clean_up_name(name)
|
195
200
|
|
196
|
-
|
201
|
+
## Create a clean copy of Name and convert to string
|
202
|
+
tmp = name.to_s.dup
|
203
|
+
|
197
204
|
## Clean up device name and interface name to remove restricted caracter
|
198
205
|
tmp.gsub!('/', '_')
|
199
206
|
tmp.gsub!(':', '_')
|
@@ -206,6 +213,8 @@ module Fluent
|
|
206
213
|
|
207
214
|
if type.to_s == 'flat'
|
208
215
|
|
216
|
+
record = {}
|
217
|
+
|
209
218
|
# initialize variables
|
210
219
|
name = ""
|
211
220
|
sensor_value = ""
|
@@ -220,16 +229,18 @@ module Fluent
|
|
220
229
|
end
|
221
230
|
|
222
231
|
if name == ""
|
223
|
-
name = key + "." + clean_up_name(value)
|
232
|
+
name = key + "." + clean_up_name(value)
|
224
233
|
else
|
225
|
-
name = name + "." + key + "." + clean_up_name(value)
|
234
|
+
name = name + "." + key + "." + clean_up_name(value)
|
226
235
|
end
|
227
236
|
end
|
228
237
|
end
|
229
238
|
|
230
239
|
record = { name => sensor_value }
|
231
240
|
return record
|
241
|
+
|
232
242
|
elsif output_format.to_s == 'structured'
|
243
|
+
|
233
244
|
record = {}
|
234
245
|
## Convert list into Hash
|
235
246
|
## Each entry on the list is a hash with 1 key/value
|
@@ -260,9 +271,9 @@ module Fluent
|
|
260
271
|
next
|
261
272
|
else
|
262
273
|
if name == ""
|
263
|
-
name = key + "." + clean_up_name(value)
|
274
|
+
name = key + "." + clean_up_name(value)
|
264
275
|
else
|
265
|
-
name = name + "." + key + "." + clean_up_name(value)
|
276
|
+
name = name + "." + key + "." + clean_up_name(value)
|
266
277
|
end
|
267
278
|
end
|
268
279
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-juniper-telemetry
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.9
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-
|
12
|
+
date: 2016-04-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: fluentd
|