sensu-extensions-snmp-trap 0.0.21 → 0.0.22
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 +4 -4
- data/lib/sensu/extensions/snmp-trap.rb +21 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: deb2d73b39cf91c5709d0dbe0493d9172d603c7e
|
4
|
+
data.tar.gz: cf009e01e2a987f56d8ac242c0ce5899aeba9ace
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f625aa909ee29dea1bc5491ec666f73ade3e87213f5346d276c9bcaca4f89a434a779227649b9089dece956b343934943e285cfc7c773c3e95f7554d0081e423
|
7
|
+
data.tar.gz: 893f57fb730621f6368d9273a26159100a43abd73818313c7a4c3828e62e2e277702c6eddc33a82dcbaf8081d19b899f39a900550ce90ba07f68474e771296a6
|
@@ -192,6 +192,26 @@ module Sensu
|
|
192
192
|
end
|
193
193
|
end
|
194
194
|
|
195
|
+
def determine_trap_name(trap)
|
196
|
+
oid_symbolic_name = determine_trap_oid(trap)
|
197
|
+
if oid_symbolic_name =~ /link(down|up)/i
|
198
|
+
name = "linkStatus"
|
199
|
+
trap.varbind_list.each do |varbind|
|
200
|
+
symbolic_name = @mibs.name(varbind.name.to_oid)
|
201
|
+
if symbolic_name =~ /ifdescr/i
|
202
|
+
type_conversion = RUBY_ASN1_MAP[varbind.value.asn1_type]
|
203
|
+
if type_conversion
|
204
|
+
value = varbind.value.send(type_conversion)
|
205
|
+
name = "#{name}-#{value}"
|
206
|
+
end
|
207
|
+
end
|
208
|
+
end
|
209
|
+
name
|
210
|
+
else
|
211
|
+
oid_symbolic_name
|
212
|
+
end
|
213
|
+
end
|
214
|
+
|
195
215
|
def determine_trap_status(trap)
|
196
216
|
oid_symbolic_name = determine_trap_oid(trap)
|
197
217
|
mapping = RESULT_STATUS_MAP.detect do |mapping|
|
@@ -217,7 +237,6 @@ module Sensu
|
|
217
237
|
symbolic_name =~ mapping.first
|
218
238
|
end
|
219
239
|
if mapping && !result[mapping.last]
|
220
|
-
type_conversion = RUBY_ASN1_MAP[varbind.value.asn1_type]
|
221
240
|
result[mapping.last] = value
|
222
241
|
end
|
223
242
|
else
|
@@ -228,7 +247,7 @@ module Sensu
|
|
228
247
|
})
|
229
248
|
end
|
230
249
|
end
|
231
|
-
result[:name] ||=
|
250
|
+
result[:name] ||= determine_trap_name(trap)
|
232
251
|
result[:output] ||= "received snmp trap"
|
233
252
|
result[:status] ||= determine_trap_status(trap)
|
234
253
|
send_result(result)
|