logstash-codec-sflow 1.2.1 → 2.0.0
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/CHANGELOG.md +4 -0
- data/lib/logstash/codecs/sflow.rb +11 -11
- data/logstash-codec-sflow.gemspec +5 -5
- data/spec/codecs/sflow/packet_header_spec.rb +1 -1
- data/spec/codecs/sflow_spec.rb +1 -1
- metadata +21 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1b9707ef71fadbd7c248df7191a55ed18255b5b5
|
4
|
+
data.tar.gz: 9845de886391e418641adb414ffccdb6623ff541
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0332a09122db2a8a7d630f5caf3b74c1be36b3a27b8d1d06f7e4435645444ea6e14e01f8c78d0e35297d36b3ab1d819011438be8e9f82fdb15f694f237156662
|
7
|
+
data.tar.gz: d06f4c2537313dcb09594e98fb27fd5ff95c6aae14cbdf8ce8e9e6cdf6f57dda22121a559b8904637994978c1f538bf62c8d6c7518a68c9163cf8b507da9c66f
|
data/CHANGELOG.md
CHANGED
@@ -42,7 +42,7 @@ class LogStash::Codecs::Sflow < LogStash::Codecs::Base
|
|
42
42
|
assign_key_value(event, bindata_kv[k])
|
43
43
|
else
|
44
44
|
unless @removed_field.include? k.to_s or v.is_a?(BinData::Array)
|
45
|
-
event
|
45
|
+
event.set("#{k.to_s}", v.to_s)
|
46
46
|
end
|
47
47
|
end
|
48
48
|
end
|
@@ -54,7 +54,7 @@ class LogStash::Codecs::Sflow < LogStash::Codecs::Base
|
|
54
54
|
# @param [Object] sample
|
55
55
|
# @param [Object] record
|
56
56
|
def common_sflow(event, decoded, sample)
|
57
|
-
event
|
57
|
+
event.set('agent_ip', decoded['agent_ip'].to_s)
|
58
58
|
assign_key_value(event, decoded)
|
59
59
|
assign_key_value(event, sample)
|
60
60
|
end
|
@@ -63,16 +63,16 @@ class LogStash::Codecs::Sflow < LogStash::Codecs::Base
|
|
63
63
|
if @snmp_interface
|
64
64
|
if event.include?('source_id_type') and event['source_id_type'].to_s == '0'
|
65
65
|
if event.include?('source_id_index')
|
66
|
-
event
|
66
|
+
event.set('source_id_index_descr', @snmp.get_interface(event.get('agent_ip'), event.get('source_id_index')))
|
67
67
|
end
|
68
68
|
if event.include?('input_interface')
|
69
|
-
event
|
69
|
+
event.set('input_interface_descr', @snmp.get_interface(event.get('agent_ip'), event.get('input_interface')))
|
70
70
|
end
|
71
71
|
if event.include?('output_interface')
|
72
|
-
event
|
72
|
+
event.set('output_interface_descr', @snmp.get_interface(event.get('agent_ip'), event.get('output_interface')))
|
73
73
|
end
|
74
74
|
if event.include?('interface_index')
|
75
|
-
event
|
75
|
+
event.set('interface_index_descr', @snmp.get_interface(event.get('agent_ip'), event.get('interface_index')))
|
76
76
|
end
|
77
77
|
end
|
78
78
|
end
|
@@ -133,13 +133,13 @@ class LogStash::Codecs::Sflow < LogStash::Codecs::Base
|
|
133
133
|
end
|
134
134
|
#compute frame_length_times_sampling_rate
|
135
135
|
if event.include?('frame_length') and event.include?('sampling_rate')
|
136
|
-
event
|
136
|
+
event.set('frame_length_times_sampling_rate', event.get('frame_length').to_i * event.get('sampling_rate').to_i)
|
137
137
|
end
|
138
138
|
|
139
139
|
if sample['sample_format'] == 1
|
140
|
-
event
|
140
|
+
event.set('sflow_type', 'flow_sample')
|
141
141
|
else
|
142
|
-
event
|
142
|
+
event.set('sflow_type', 'expanded_flow_sample')
|
143
143
|
end
|
144
144
|
|
145
145
|
#Get interface dfescr if snmp_interface true
|
@@ -163,9 +163,9 @@ class LogStash::Codecs::Sflow < LogStash::Codecs::Base
|
|
163
163
|
assign_key_value(event, record)
|
164
164
|
|
165
165
|
if sample['sample_format'] == 2
|
166
|
-
event
|
166
|
+
event.set('sflow_type', 'counter_sample')
|
167
167
|
else
|
168
|
-
event
|
168
|
+
event.set('sflow_type', 'expanded_counter_sample')
|
169
169
|
end
|
170
170
|
|
171
171
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
|
3
3
|
s.name = 'logstash-codec-sflow'
|
4
|
-
s.version = '
|
4
|
+
s.version = '2.0.0'
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
6
6
|
s.summary = 'The sflow codec is for decoding SFlow v5 flows.'
|
7
7
|
s.description = 'This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not a stand-alone program'
|
@@ -20,10 +20,10 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.metadata = {'logstash_plugin' => 'true', 'logstash_group' => 'codec'}
|
21
21
|
|
22
22
|
# Gem dependencies
|
23
|
-
s.add_runtime_dependency 'logstash-core', '>= 1.
|
24
|
-
s.add_runtime_dependency 'bindata', ['
|
25
|
-
s.add_runtime_dependency 'lru_redux', ['
|
26
|
-
s.add_runtime_dependency 'snmp', ['
|
23
|
+
s.add_runtime_dependency 'logstash-core-plugin-api', '>= 1.60', '<= 2.99'
|
24
|
+
s.add_runtime_dependency 'bindata', ['~> 2.3']
|
25
|
+
s.add_runtime_dependency 'lru_redux', ['~> 1.1']
|
26
|
+
s.add_runtime_dependency 'snmp', ['~> 1.2']
|
27
27
|
s.add_development_dependency 'logstash-devutils'
|
28
28
|
end
|
29
29
|
|
data/spec/codecs/sflow_spec.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-codec-sflow
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nicolas Fraison
|
@@ -15,63 +15,63 @@ dependencies:
|
|
15
15
|
requirements:
|
16
16
|
- - ">="
|
17
17
|
- !ruby/object:Gem::Version
|
18
|
-
version: 1.
|
19
|
-
- - "
|
18
|
+
version: '1.60'
|
19
|
+
- - "<="
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
22
|
-
name: logstash-core
|
21
|
+
version: '2.99'
|
22
|
+
name: logstash-core-plugin-api
|
23
23
|
prerelease: false
|
24
24
|
type: :runtime
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 1.
|
30
|
-
- - "
|
29
|
+
version: '1.60'
|
30
|
+
- - "<="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
32
|
+
version: '2.99'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
requirement: !ruby/object:Gem::Requirement
|
35
35
|
requirements:
|
36
|
-
- - "
|
36
|
+
- - "~>"
|
37
37
|
- !ruby/object:Gem::Version
|
38
|
-
version: 2.3
|
38
|
+
version: '2.3'
|
39
39
|
name: bindata
|
40
40
|
prerelease: false
|
41
41
|
type: :runtime
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- - "
|
44
|
+
- - "~>"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 2.3
|
46
|
+
version: '2.3'
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
requirement: !ruby/object:Gem::Requirement
|
49
49
|
requirements:
|
50
|
-
- - "
|
50
|
+
- - "~>"
|
51
51
|
- !ruby/object:Gem::Version
|
52
|
-
version: 1.1
|
52
|
+
version: '1.1'
|
53
53
|
name: lru_redux
|
54
54
|
prerelease: false
|
55
55
|
type: :runtime
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
|
-
- - "
|
58
|
+
- - "~>"
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: 1.1
|
60
|
+
version: '1.1'
|
61
61
|
- !ruby/object:Gem::Dependency
|
62
62
|
requirement: !ruby/object:Gem::Requirement
|
63
63
|
requirements:
|
64
|
-
- - "
|
64
|
+
- - "~>"
|
65
65
|
- !ruby/object:Gem::Version
|
66
|
-
version: 1.2
|
66
|
+
version: '1.2'
|
67
67
|
name: snmp
|
68
68
|
prerelease: false
|
69
69
|
type: :runtime
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
|
-
- - "
|
72
|
+
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: 1.2
|
74
|
+
version: '1.2'
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
requirement: !ruby/object:Gem::Requirement
|
77
77
|
requirements:
|
@@ -141,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
141
|
version: '0'
|
142
142
|
requirements: []
|
143
143
|
rubyforge_project:
|
144
|
-
rubygems_version: 2.
|
144
|
+
rubygems_version: 2.6.6
|
145
145
|
signing_key:
|
146
146
|
specification_version: 4
|
147
147
|
summary: The sflow codec is for decoding SFlow v5 flows.
|