logstash-filter-multiline 1.1.0 → 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: df182f44556a48d76c7f81b2f17c48ea58e5b561
4
- data.tar.gz: 88a66ec2683dc519251713821db75d76c8a26f57
3
+ metadata.gz: 5c2f9b96b2a529c7707d35c8e0c7a9bff1588941
4
+ data.tar.gz: 8ab08111a3a970210a51df95aad6d1d54c04d261
5
5
  SHA512:
6
- metadata.gz: 0221738244d7cf9ce35954fcfd90c0efddd861e84258203d4b35e6674187de9ccd02321d74c9022d2fff9c998867799a749414c5449b7dda5cdbca0076cbc350
7
- data.tar.gz: c343454ea138b676862b5e5fb05befffd8db3ebcf5561c438af440161c78b0e98afdd7c35dea7dab77fab6d983ef6e461b73853f05e21f15ac3846662621b71a
6
+ metadata.gz: b117b8443aeeb1b1b8f6f4c09d12c0a88cef5a56a1dd15552ad35f9cce928c0f56f58531fd25e95bff073c0eceec3dd38fc55a0499c9eeb0ea15c3ba8570280c
7
+ data.tar.gz: 4c177d9f33439f8979ec162cc0544e35be1b8a35ccc719c7e781c27fdba21fc5c49780c56ed08cfabeb29632017d216c176be2e1cf81fe4f28038e9e8693e4b8
data/CHANGELOG.md CHANGED
@@ -1,2 +0,0 @@
1
- ## 1.1.0
2
- - Fix metadata handling, fixes #19 and #22
data/Gemfile CHANGED
@@ -1,2 +1,2 @@
1
1
  source 'https://rubygems.org'
2
- gemspec
2
+ gemspec
@@ -209,7 +209,7 @@ class LogStash::Filters::Multiline < LogStash::Filters::Base
209
209
  end # def flush
210
210
 
211
211
  public
212
- def teardown
212
+ def close
213
213
  # nothing to do
214
214
  end
215
215
 
@@ -228,10 +228,8 @@ class LogStash::Filters::Multiline < LogStash::Filters::Base
228
228
  # this line is not part of the previous event if we have a pending event, it's done, send it.
229
229
  # put the current event into pending
230
230
  unless pending.empty?
231
- tmp = event.to_hash_with_metadata
232
- merged_events = merge(pending)
233
- event.overwrite(merged_events)
234
- event["@metadata"] = merged_events["@metadata"] # Override does not copy the metadata
231
+ tmp = event.to_hash
232
+ event.overwrite(merge(pending))
235
233
  pending.clear # avoid array creation
236
234
  pending << LogStash::Event.new(tmp)
237
235
  else
@@ -255,9 +253,7 @@ class LogStash::Filters::Multiline < LogStash::Filters::Base
255
253
  # if we have something in pending, join it with this message and send it.
256
254
  # otherwise, this is a new message and not part of multiline, send it.
257
255
  unless pending.empty?
258
- merged_events = merge(pending << event)
259
- event.overwrite(merged_events)
260
- event["@metadata"] = merged_events["@metadata"] # Override does not copy the metadata
256
+ event.overwrite(merge(pending << event))
261
257
  pending.clear
262
258
  end
263
259
  end # if match
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'logstash-filter-multiline'
4
- s.version = '1.1.0'
4
+ s.version = '2.0.0'
5
5
  s.licenses = ['Apache License (2.0)']
6
6
  s.summary = "This filter will collapse multiline messages from a single source into one Logstash event."
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"
@@ -11,7 +11,7 @@ Gem::Specification.new do |s|
11
11
  s.require_paths = ["lib"]
12
12
 
13
13
  # Files
14
- s.files = `git ls-files`.split($\)
14
+ s.files = Dir['lib/**/*','spec/**/*','vendor/**/*','*.gemspec','*.md','CONTRIBUTORS','Gemfile','LICENSE','NOTICE.TXT']
15
15
 
16
16
  # Tests
17
17
  s.test_files = s.files.grep(%r{^(test|spec|features)/})
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.metadata = { "logstash_plugin" => "true", "logstash_group" => "filter" }
21
21
 
22
22
  # Gem dependencies
23
- s.add_runtime_dependency "logstash-core", '>= 1.4.0', '< 2.0.0.alpha0'
23
+ s.add_runtime_dependency "logstash-core", "~> 2.0.0.snapshot"
24
24
  s.add_runtime_dependency 'logstash-patterns-core'
25
25
  s.add_runtime_dependency 'logstash-filter-mutate'
26
26
  s.add_runtime_dependency 'jls-grok', '~> 0.11.0'
@@ -245,47 +245,4 @@ describe LogStash::Filters::Multiline do
245
245
  end
246
246
  end
247
247
 
248
-
249
- describe "keeps metadata fields after two consecutive non multline lines" do
250
- config <<-CONFIG
251
- filter {
252
- mutate { add_field => { "[@metadata][index]" => "logstash-2015.11.19" } }
253
- multiline {
254
- pattern => "^%{NUMBER}"
255
- what => "previous"
256
- }
257
- mutate { add_field => { "[@metadata][type]" => "foo" } }
258
- }
259
- CONFIG
260
-
261
- sample ["line1", "line2"] do
262
- expect(subject).to be_a(Array)
263
- expect(subject[0]["@metadata"]).to include("index"=>"logstash-2015.11.19")
264
- expect(subject[1]["@metadata"]).to include("index"=>"logstash-2015.11.19")
265
- expect(subject[0]["@metadata"]).to include("type"=>"foo")
266
- expect(subject[1]["@metadata"]).to include("type"=>"foo")
267
- end
268
- end
269
-
270
- describe "keeps metadata fields after two consecutive non multline lines" do
271
- config <<-CONFIG
272
- filter {
273
- mutate { add_field => { "[@metadata][index]" => "logstash-2015.11.19" } }
274
- multiline {
275
- pattern => "^%{NUMBER}"
276
- what => "next"
277
- }
278
- mutate { add_field => { "[@metadata][type]" => "foo" } }
279
- }
280
- CONFIG
281
-
282
- sample ["line1", "line2"] do
283
- expect(subject).to be_a(Array)
284
- expect(subject[0]["@metadata"]).to include("index"=>"logstash-2015.11.19")
285
- expect(subject[1]["@metadata"]).to include("index"=>"logstash-2015.11.19")
286
- expect(subject[0]["@metadata"]).to include("type"=>"foo")
287
- expect(subject[1]["@metadata"]).to include("type"=>"foo")
288
- end
289
- end
290
-
291
248
  end
metadata CHANGED
@@ -1,105 +1,97 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-filter-multiline
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-07 00:00:00.000000000 Z
11
+ date: 2015-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: logstash-core
15
- version_requirements: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - '>='
18
- - !ruby/object:Gem::Version
19
- version: 1.4.0
20
- - - <
21
- - !ruby/object:Gem::Version
22
- version: 2.0.0.alpha0
23
14
  requirement: !ruby/object:Gem::Requirement
24
15
  requirements:
25
- - - '>='
26
- - !ruby/object:Gem::Version
27
- version: 1.4.0
28
- - - <
16
+ - - ~>
29
17
  - !ruby/object:Gem::Version
30
- version: 2.0.0.alpha0
18
+ version: 2.0.0.snapshot
19
+ name: logstash-core
31
20
  prerelease: false
32
21
  type: :runtime
33
- - !ruby/object:Gem::Dependency
34
- name: logstash-patterns-core
35
22
  version_requirements: !ruby/object:Gem::Requirement
36
23
  requirements:
37
- - - '>='
24
+ - - ~>
38
25
  - !ruby/object:Gem::Version
39
- version: '0'
26
+ version: 2.0.0.snapshot
27
+ - !ruby/object:Gem::Dependency
40
28
  requirement: !ruby/object:Gem::Requirement
41
29
  requirements:
42
30
  - - '>='
43
31
  - !ruby/object:Gem::Version
44
32
  version: '0'
33
+ name: logstash-patterns-core
45
34
  prerelease: false
46
35
  type: :runtime
47
- - !ruby/object:Gem::Dependency
48
- name: logstash-filter-mutate
49
36
  version_requirements: !ruby/object:Gem::Requirement
50
37
  requirements:
51
38
  - - '>='
52
39
  - !ruby/object:Gem::Version
53
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
54
42
  requirement: !ruby/object:Gem::Requirement
55
43
  requirements:
56
44
  - - '>='
57
45
  - !ruby/object:Gem::Version
58
46
  version: '0'
47
+ name: logstash-filter-mutate
59
48
  prerelease: false
60
49
  type: :runtime
61
- - !ruby/object:Gem::Dependency
62
- name: jls-grok
63
50
  version_requirements: !ruby/object:Gem::Requirement
64
51
  requirements:
65
- - - ~>
52
+ - - '>='
66
53
  - !ruby/object:Gem::Version
67
- version: 0.11.0
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
68
56
  requirement: !ruby/object:Gem::Requirement
69
57
  requirements:
70
58
  - - ~>
71
59
  - !ruby/object:Gem::Version
72
60
  version: 0.11.0
61
+ name: jls-grok
73
62
  prerelease: false
74
63
  type: :runtime
75
- - !ruby/object:Gem::Dependency
76
- name: logstash-devutils
77
64
  version_requirements: !ruby/object:Gem::Requirement
78
65
  requirements:
79
- - - '>='
66
+ - - ~>
80
67
  - !ruby/object:Gem::Version
81
- version: '0'
68
+ version: 0.11.0
69
+ - !ruby/object:Gem::Dependency
82
70
  requirement: !ruby/object:Gem::Requirement
83
71
  requirements:
84
72
  - - '>='
85
73
  - !ruby/object:Gem::Version
86
74
  version: '0'
75
+ name: logstash-devutils
87
76
  prerelease: false
88
77
  type: :development
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
89
83
  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
90
84
  email: info@elastic.co
91
85
  executables: []
92
86
  extensions: []
93
87
  extra_rdoc_files: []
94
88
  files:
95
- - .gitignore
96
89
  - CHANGELOG.md
97
90
  - CONTRIBUTORS
98
91
  - Gemfile
99
92
  - LICENSE
100
93
  - NOTICE.TXT
101
94
  - README.md
102
- - Rakefile
103
95
  - lib/logstash/filters/multiline.rb
104
96
  - logstash-filter-multiline.gemspec
105
97
  - spec/filters/multiline_spec.rb
@@ -125,10 +117,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
125
117
  version: '0'
126
118
  requirements: []
127
119
  rubyforge_project:
128
- rubygems_version: 2.4.6
120
+ rubygems_version: 2.4.8
129
121
  signing_key:
130
122
  specification_version: 4
131
123
  summary: This filter will collapse multiline messages from a single source into one Logstash event.
132
124
  test_files:
133
125
  - spec/filters/multiline_spec.rb
134
- has_rdoc:
data/.gitignore DELETED
@@ -1,4 +0,0 @@
1
- *.gem
2
- Gemfile.lock
3
- .bundle
4
- vendor
data/Rakefile DELETED
@@ -1,7 +0,0 @@
1
- @files=[]
2
-
3
- task :default do
4
- system("rake -T")
5
- end
6
-
7
- require "logstash/devutils/rake"