logstash-codec-netflow 4.3.2 → 4.3.3
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 +3 -0
- data/lib/logstash/codecs/netflow.rb +29 -12
- data/logstash-codec-netflow.gemspec +1 -1
- metadata +11 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1077f3fabf491578e56f3bdf62833fcc57fa84e7a45339a86041d0d3cab20ea9
|
|
4
|
+
data.tar.gz: 483b793cab3301353f7631cba07eb82e6a560b62c9656cc0e718ef0286cc61ab
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 67390c9542344deb69f6d862de01458e06d11932ecad4afc6ad824bc4d22abf22188786d309738294d7b311e688acebe0735d6ab8a5007f52cf8852acc5745cd
|
|
7
|
+
data.tar.gz: b0ef1675c310fec9dd98ac6db3e8088c62feaa230a6a368d640b67c8ee25f2970edba1d52c49d8d3d619be38894a27f141f7c9c15cf554584210c7c3ffe2b44e
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
## 4.3.3
|
|
2
|
+
- Fix NoMethodError when decode fails. [214](https://github.com/logstash-plugins/logstash-codec-netflow/pull/214)
|
|
3
|
+
|
|
1
4
|
## 4.3.2
|
|
2
5
|
- Updates the milliseconds rounding for IPFIX start/end milliseconds fields.
|
|
3
6
|
- Fix the test to run on Logstash 8 with microseconds precision. [#206](https://github.com/logstash-plugins/logstash-codec-netflow/pull/206)
|
|
@@ -88,16 +88,32 @@ class LogStash::Codecs::Netflow < LogStash::Codecs::Base
|
|
|
88
88
|
if header.version == 5
|
|
89
89
|
flowset = Netflow5PDU.read(payload)
|
|
90
90
|
flowset.records.each do |record|
|
|
91
|
-
|
|
91
|
+
begin
|
|
92
|
+
yield(decode_netflow5(flowset, record))
|
|
93
|
+
rescue BinData::ValidityError, IOError => e
|
|
94
|
+
@logger.warn("Invalid Netflow v5 record (#{e})")
|
|
95
|
+
if @logger.debug?
|
|
96
|
+
@logger.debug("Netflow v5 decode error", :flow_seq_num => flowset.flow_seq_num)
|
|
97
|
+
end
|
|
98
|
+
end
|
|
92
99
|
end
|
|
93
100
|
elsif header.version == 9
|
|
94
101
|
# BinData::trace_reading do
|
|
95
102
|
flowset = Netflow9PDU.read(payload)
|
|
96
103
|
flowset.records.each do |record|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
104
|
+
begin
|
|
105
|
+
if metadata != nil
|
|
106
|
+
decode_netflow9(flowset, record, metadata).each{|event| yield(event)}
|
|
107
|
+
else
|
|
108
|
+
decode_netflow9(flowset, record).each{|event| yield(event)}
|
|
109
|
+
end
|
|
110
|
+
rescue BinData::ValidityError, IOError => e
|
|
111
|
+
@logger.warn("Invalid Netflow v9 record (#{e})")
|
|
112
|
+
if @logger.debug?
|
|
113
|
+
host = metadata ? metadata["host"] : nil
|
|
114
|
+
port = metadata ? metadata["port"] : nil
|
|
115
|
+
@logger.debug("Netflow v9 decode error", :source_id => flowset.source_id, :flowset_id => record.flowset_id, :host => host, :port => port)
|
|
116
|
+
end
|
|
101
117
|
end
|
|
102
118
|
# end
|
|
103
119
|
end
|
|
@@ -105,7 +121,14 @@ class LogStash::Codecs::Netflow < LogStash::Codecs::Base
|
|
|
105
121
|
# BinData::trace_reading do
|
|
106
122
|
flowset = IpfixPDU.read(payload)
|
|
107
123
|
flowset.records.each do |record|
|
|
108
|
-
|
|
124
|
+
begin
|
|
125
|
+
decode_ipfix(flowset, record).each { |event| yield(event) }
|
|
126
|
+
rescue BinData::ValidityError, IOError => e
|
|
127
|
+
@logger.warn("Invalid IPFIX record (#{e})")
|
|
128
|
+
if @logger.debug?
|
|
129
|
+
@logger.debug("IPFIX decode error", :observation_domain_id => flowset.observation_domain_id, :flowset_id => record.flowset_id)
|
|
130
|
+
end
|
|
131
|
+
end
|
|
109
132
|
end
|
|
110
133
|
# end
|
|
111
134
|
else
|
|
@@ -151,8 +174,6 @@ class LogStash::Codecs::Netflow < LogStash::Codecs::Base
|
|
|
151
174
|
end
|
|
152
175
|
|
|
153
176
|
event_factory.new_event(event)
|
|
154
|
-
rescue BinData::ValidityError, IOError => e
|
|
155
|
-
@logger.warn("Invalid netflow packet received (#{e})")
|
|
156
177
|
end
|
|
157
178
|
|
|
158
179
|
def decode_netflow9(flowset, record, metadata = nil)
|
|
@@ -280,8 +301,6 @@ class LogStash::Codecs::Netflow < LogStash::Codecs::Base
|
|
|
280
301
|
end
|
|
281
302
|
|
|
282
303
|
events
|
|
283
|
-
rescue BinData::ValidityError, IOError => e
|
|
284
|
-
@logger.warn("Invalid netflow packet received (#{e})")
|
|
285
304
|
end
|
|
286
305
|
|
|
287
306
|
def decode_ipfix(flowset, record)
|
|
@@ -371,8 +390,6 @@ class LogStash::Codecs::Netflow < LogStash::Codecs::Base
|
|
|
371
390
|
end
|
|
372
391
|
|
|
373
392
|
events
|
|
374
|
-
rescue BinData::ValidityError => e
|
|
375
|
-
@logger.warn("Invalid IPFIX packet received (#{e})")
|
|
376
393
|
end
|
|
377
394
|
|
|
378
395
|
def load_definitions(defaults, extra)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Gem::Specification.new do |s|
|
|
2
2
|
|
|
3
3
|
s.name = 'logstash-codec-netflow'
|
|
4
|
-
s.version = '4.3.
|
|
4
|
+
s.version = '4.3.3'
|
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
|
6
6
|
s.summary = "Reads Netflow v5, Netflow v9 and IPFIX data"
|
|
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/logstash-plugin install gemname. This gem is not a stand-alone program"
|
metadata
CHANGED
|
@@ -1,66 +1,65 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: logstash-codec-netflow
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.3.
|
|
4
|
+
version: 4.3.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Elastic
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 2026-01-21 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: logstash-core-plugin-api
|
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
|
15
15
|
requirements:
|
|
16
16
|
- - "~>"
|
|
17
17
|
- !ruby/object:Gem::Version
|
|
18
18
|
version: '2.0'
|
|
19
|
-
name: logstash-core-plugin-api
|
|
20
|
-
prerelease: false
|
|
21
19
|
type: :runtime
|
|
20
|
+
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - "~>"
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
25
|
version: '2.0'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: logstash-mixin-event_support
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
29
29
|
requirements:
|
|
30
30
|
- - "~>"
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
32
|
version: '1.0'
|
|
33
|
-
name: logstash-mixin-event_support
|
|
34
|
-
prerelease: false
|
|
35
33
|
type: :runtime
|
|
34
|
+
prerelease: false
|
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
36
|
requirements:
|
|
38
37
|
- - "~>"
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
39
|
version: '1.0'
|
|
41
40
|
- !ruby/object:Gem::Dependency
|
|
41
|
+
name: bindata
|
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
|
43
43
|
requirements:
|
|
44
44
|
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
46
|
version: 1.5.0
|
|
47
|
-
name: bindata
|
|
48
|
-
prerelease: false
|
|
49
47
|
type: :runtime
|
|
48
|
+
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
51
|
- - ">="
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
53
|
version: 1.5.0
|
|
55
54
|
- !ruby/object:Gem::Dependency
|
|
55
|
+
name: logstash-devutils
|
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
|
57
57
|
requirements:
|
|
58
58
|
- - ">="
|
|
59
59
|
- !ruby/object:Gem::Version
|
|
60
60
|
version: 1.0.0
|
|
61
|
-
name: logstash-devutils
|
|
62
|
-
prerelease: false
|
|
63
61
|
type: :development
|
|
62
|
+
prerelease: false
|
|
64
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
64
|
requirements:
|
|
66
65
|
- - ">="
|
|
@@ -200,7 +199,6 @@ licenses:
|
|
|
200
199
|
metadata:
|
|
201
200
|
logstash_plugin: 'true'
|
|
202
201
|
logstash_group: codec
|
|
203
|
-
post_install_message:
|
|
204
202
|
rdoc_options: []
|
|
205
203
|
require_paths:
|
|
206
204
|
- lib
|
|
@@ -215,8 +213,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
215
213
|
- !ruby/object:Gem::Version
|
|
216
214
|
version: '0'
|
|
217
215
|
requirements: []
|
|
218
|
-
rubygems_version: 3.
|
|
219
|
-
signing_key:
|
|
216
|
+
rubygems_version: 3.6.3
|
|
220
217
|
specification_version: 4
|
|
221
218
|
summary: Reads Netflow v5, Netflow v9 and IPFIX data
|
|
222
219
|
test_files:
|