logstash-filter-grok 3.2.0 → 3.2.1
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/filters/grok.rb +3 -1
- data/lib/logstash/filters/grok/timeout_enforcer.rb +10 -6
- data/logstash-filter-grok.gemspec +1 -1
- data/spec/filters/grok_spec.rb +19 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 26ce02b49c1b5bf27a1ea5470cef3b2875fa73e6
|
4
|
+
data.tar.gz: 936454b6cf21105471e21ed161835d722a9092c2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2723677afeb369af6e1555b308b11c24ee4cb9f6c1baf6b74fc2fdedcff3e4d09702bcabf1532a2738134850eaa9f4c9821daf3f230df02f0a2c8bed66f701eb
|
7
|
+
data.tar.gz: 2625317a10db35a9de2905ba534bfa80bbf7d6df031122077e180e252d0dc20ea1bfdaa46e62ada24894150502275c007c6706ef3433bb5a02735c45189b26c2
|
data/CHANGELOG.md
CHANGED
@@ -222,6 +222,8 @@
|
|
222
222
|
# will be parsed and `hello world` will overwrite the original message.
|
223
223
|
config :overwrite, :validate => :array, :default => []
|
224
224
|
|
225
|
+
attr_reader :timeout_enforcer
|
226
|
+
|
225
227
|
# Register default pattern paths
|
226
228
|
@@patterns_path ||= Set.new
|
227
229
|
@@patterns_path += [
|
@@ -390,7 +392,7 @@
|
|
390
392
|
end # def add_patterns_from_files
|
391
393
|
|
392
394
|
def close
|
393
|
-
@
|
395
|
+
@timeout_enforcer.stop!
|
394
396
|
end
|
395
397
|
|
396
398
|
end # class LogStash::Filters::Grok
|
@@ -1,4 +1,6 @@
|
|
1
1
|
class LogStash::Filters::Grok::TimeoutEnforcer
|
2
|
+
attr_reader :running
|
3
|
+
|
2
4
|
def initialize(logger, timeout_nanos)
|
3
5
|
@logger = logger
|
4
6
|
@running = true
|
@@ -42,12 +44,14 @@ class LogStash::Filters::Grok::TimeoutEnforcer
|
|
42
44
|
end
|
43
45
|
|
44
46
|
def cancel_timed_out!
|
45
|
-
@
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
47
|
+
@timer_mutex.synchronize do
|
48
|
+
@threads_to_start_time.each do |thread,start_time|
|
49
|
+
now = java.lang.System.nanoTime # save ourselves some nanotime calls
|
50
|
+
elapsed = java.lang.System.nanoTime - start_time
|
51
|
+
if elapsed > @timeout_nanos
|
52
|
+
elapsed_millis = elapsed / 1000
|
53
|
+
thread.raise(::LogStash::Filters::Grok::TimeoutException.new(elapsed_millis))
|
54
|
+
end
|
51
55
|
end
|
52
56
|
end
|
53
57
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
|
3
3
|
s.name = 'logstash-filter-grok'
|
4
|
-
s.version = '3.2.
|
4
|
+
s.version = '3.2.1'
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
6
6
|
s.summary = "Parse arbitrary text and structure it."
|
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"
|
data/spec/filters/grok_spec.rb
CHANGED
@@ -821,4 +821,23 @@ describe LogStash::Filters::Grok do
|
|
821
821
|
end
|
822
822
|
end
|
823
823
|
|
824
|
+
describe "closing" do
|
825
|
+
subject(:plugin) do
|
826
|
+
::LogStash::Filters::Grok.new("match" => {"message" => "A"})
|
827
|
+
end
|
828
|
+
|
829
|
+
before do
|
830
|
+
plugin.register
|
831
|
+
end
|
832
|
+
|
833
|
+
it "should close cleanly" do
|
834
|
+
expect { plugin.do_close }.not_to raise_error
|
835
|
+
end
|
836
|
+
|
837
|
+
it "should stop the timeout enforcer" do
|
838
|
+
plugin.do_close
|
839
|
+
expect(plugin.timeout_enforcer.running).to be false
|
840
|
+
end
|
841
|
+
end
|
842
|
+
|
824
843
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-filter-grok
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.2.
|
4
|
+
version: 3.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-08-
|
11
|
+
date: 2016-08-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|