logstash-core 1.5.3.snapshot2-java → 1.5.4-java
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.
Potentially problematic release.
This version of logstash-core might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/lib/logstash-core.rb +2 -1
- data/lib/logstash/agent.rb +15 -1
- data/lib/logstash/config/mixin.rb +0 -1
- data/lib/logstash/environment.rb +9 -0
- data/lib/logstash/java_integration.rb +2 -1
- data/lib/logstash/namespace.rb +0 -1
- data/lib/logstash/patches.rb +1 -0
- data/lib/logstash/patches/bugfix_jruby_2558.rb +1 -0
- data/lib/logstash/patches/bundler.rb +1 -0
- data/lib/logstash/patches/cabin.rb +1 -0
- data/lib/logstash/patches/rubygems.rb +1 -0
- data/lib/logstash/patches/stronger_openssl_defaults.rb +9 -3
- data/lib/logstash/program.rb +0 -1
- data/lib/logstash/runner.rb +0 -1
- data/lib/logstash/string_interpolation.rb +3 -2
- data/lib/logstash/util/accessors.rb +0 -1
- data/lib/logstash/util/decorators.rb +0 -1
- data/lib/logstash/util/filetools.rb +1 -0
- data/lib/logstash/util/java_version.rb +5 -1
- data/lib/logstash/util/plugin_version.rb +1 -0
- data/lib/logstash/util/prctl.rb +0 -1
- data/lib/logstash/util/reporter.rb +1 -0
- data/lib/logstash/util/retryable.rb +2 -1
- data/lib/logstash/util/unicode_trimmer.rb +1 -0
- data/lib/logstash/version.rb +1 -1
- data/spec/core/conditionals_spec.rb +1 -0
- data/spec/core/config_mixin_spec.rb +1 -0
- data/spec/core/environment_spec.rb +12 -0
- data/spec/core/event_spec.rb +10 -0
- data/spec/core/pipeline_spec.rb +1 -0
- data/spec/core/plugin_spec.rb +1 -0
- data/spec/core/runner_spec.rb +1 -0
- data/spec/core/timestamp_spec.rb +1 -0
- data/spec/coverage_helper.rb +1 -0
- data/spec/license_spec.rb +1 -0
- data/spec/logstash/agent_spec.rb +26 -1
- data/spec/logstash/patches_spec.rb +65 -0
- data/spec/spec_helper.rb +1 -0
- data/spec/util/java_version_spec.rb +10 -1
- data/spec/util/plugin_version_spec.rb +1 -0
- data/spec/util_spec.rb +1 -0
- metadata +46 -46
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e4fe653fa32206e5a0c25e9a067d722d344c4d85
|
4
|
+
data.tar.gz: ac8563269d85a139e17616ff86c5334a0eec1379
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4a1901cf466e00679a94de5e201ab7a0d8d4a0439157253dfe2dd8aaec3d59587a5909d425b4c81707d1fccf96c310bccbf0e80800db03804d0eea75d730728b
|
7
|
+
data.tar.gz: 8b76d83a38e88b36bfa10e4f497c6fead84a8bf850a5e9818965ee586cb09053cbcb0caddb9f6ecf91eef7b0c0f3e51ae8e1134102cff95c2d102990b9d1a38e
|
data/lib/logstash-core.rb
CHANGED
data/lib/logstash/agent.rb
CHANGED
@@ -39,6 +39,11 @@ class LogStash::Agent < Clamp::Command
|
|
39
39
|
option ["-V", "--version"], :flag,
|
40
40
|
I18n.t("logstash.agent.flag.version")
|
41
41
|
|
42
|
+
option ["-p", "--pluginpath"] , "PATH",
|
43
|
+
I18n.t("logstash.agent.flag.pluginpath"),
|
44
|
+
:multivalued => true,
|
45
|
+
:attribute_name => :plugin_paths
|
46
|
+
|
42
47
|
option ["-t", "--configtest"], :flag,
|
43
48
|
I18n.t("logstash.agent.flag.configtest"),
|
44
49
|
:attribute_name => :config_test
|
@@ -204,6 +209,7 @@ class LogStash::Agent < Clamp::Command
|
|
204
209
|
# Log file stuff, plugin path checking, etc.
|
205
210
|
def configure
|
206
211
|
configure_logging(log_file)
|
212
|
+
configure_plugin_paths(plugin_paths)
|
207
213
|
end # def configure
|
208
214
|
|
209
215
|
# Point logging at a specific path.
|
@@ -229,7 +235,6 @@ class LogStash::Agent < Clamp::Command
|
|
229
235
|
else
|
230
236
|
@logger.level = :warn
|
231
237
|
end
|
232
|
-
|
233
238
|
end
|
234
239
|
|
235
240
|
if log_file
|
@@ -254,6 +259,15 @@ class LogStash::Agent < Clamp::Command
|
|
254
259
|
# http://jira.codehaus.org/browse/JRUBY-7003
|
255
260
|
end # def configure_logging
|
256
261
|
|
262
|
+
# add the given paths for ungemified/bare plugins lookups
|
263
|
+
# @param paths [String, Array<String>] plugins path string or list of path strings to add
|
264
|
+
def configure_plugin_paths(paths)
|
265
|
+
Array(paths).each do |path|
|
266
|
+
fail(I18n.t("logstash.agent.configuration.plugin_path_missing", :path => path)) unless File.directory?(path)
|
267
|
+
LogStash::Environment.add_plugin_path(path)
|
268
|
+
end
|
269
|
+
end
|
270
|
+
|
257
271
|
def load_config(path)
|
258
272
|
begin
|
259
273
|
uri = URI.parse(path)
|
data/lib/logstash/environment.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require "logstash/errors"
|
2
3
|
require "logstash/version"
|
3
4
|
|
@@ -99,6 +100,14 @@ module LogStash
|
|
99
100
|
I18n.reload!
|
100
101
|
fail "No locale? This is a bug." if I18n.available_locales.empty?
|
101
102
|
end
|
103
|
+
|
104
|
+
# add path for bare/ungemified plugins lookups. the path must be the base path that will include
|
105
|
+
# the dir structure 'logstash/TYPE/NAME.rb' where TYPE is 'inputs' 'filters', 'outputs' or 'codecs'
|
106
|
+
# and NAME is the name of the plugin
|
107
|
+
# @param path [String] plugins path to add
|
108
|
+
def add_plugin_path(path)
|
109
|
+
$LOAD_PATH << path
|
110
|
+
end
|
102
111
|
end
|
103
112
|
end
|
104
113
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require "java"
|
2
3
|
|
3
4
|
# this is mainly for usage with JrJackson json parsing in :raw mode which genenerates
|
@@ -96,4 +97,4 @@ module java::util::Collection
|
|
96
97
|
def inspect
|
97
98
|
"<#{self.class.name}:#{self.hashCode} #{self.to_a(&:inspect)}>"
|
98
99
|
end
|
99
|
-
end
|
100
|
+
end
|
data/lib/logstash/namespace.rb
CHANGED
data/lib/logstash/patches.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
# encoding: utf-8
|
2
2
|
require "openssl"
|
3
3
|
|
4
4
|
# :nodoc:
|
@@ -51,12 +51,18 @@ class OpenSSL::SSL::SSLContext
|
|
51
51
|
end
|
52
52
|
|
53
53
|
# Overwriting the DEFAULT_PARAMS const idea from here: https://www.ruby-lang.org/en/news/2014/10/27/changing-default-settings-of-ext-openssl/
|
54
|
+
#
|
55
|
+
# This monkeypatch doesn't enforce a `VERIFY_MODE` on the SSLContext,
|
56
|
+
# SSLContext are both used for the client and the server implementation,
|
57
|
+
# If set the `verify_mode` to peer the server wont accept any connection,
|
58
|
+
# because it will try to verify the client certificate, this is a protocol
|
59
|
+
# details implemented at the plugin level.
|
60
|
+
#
|
61
|
+
# For more details see: https://github.com/elastic/logstash/issues/3657
|
54
62
|
remove_const(:DEFAULT_PARAMS) if const_defined?(:DEFAULT_PARAMS)
|
55
63
|
DEFAULT_PARAMS = {
|
56
64
|
:ssl_version => "SSLv23",
|
57
|
-
:verify_mode => OpenSSL::SSL::VERIFY_PEER,
|
58
65
|
:ciphers => MOZILLA_INTERMEDIATE_CIPHERS,
|
59
66
|
:options => __default_options # Not a constant because it's computed at start-time.
|
60
67
|
}
|
61
|
-
|
62
68
|
end
|
data/lib/logstash/program.rb
CHANGED
data/lib/logstash/runner.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require "thread_safe"
|
2
3
|
require "forwardable"
|
3
4
|
|
@@ -17,9 +18,9 @@ module LogStash
|
|
17
18
|
if template.is_a?(Float) && (template < MIN_FLOAT_BEFORE_SCI_NOT || template >= MAX_FLOAT_BEFORE_SCI_NOT)
|
18
19
|
return ("%.15f" % template).sub(/0*$/,"")
|
19
20
|
end
|
20
|
-
|
21
|
+
|
21
22
|
template = template.to_s
|
22
|
-
|
23
|
+
|
23
24
|
return template if not_cachable?(template)
|
24
25
|
|
25
26
|
compiled = CACHE.get_or_default(template, nil) || CACHE.put(template, compile_template(template))
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require 'cabin'
|
2
3
|
|
3
4
|
module LogStash::Util::JavaVersion
|
@@ -30,6 +31,9 @@ module LogStash::Util::JavaVersion
|
|
30
31
|
# The regex below parses this all correctly http://rubular.com/r/sInQc3Nc7f
|
31
32
|
|
32
33
|
match = version_string.match(/\A(\d+)\.(\d+)\.(\d+)(_(\d+))?(-(.+))?\Z/)
|
34
|
+
|
35
|
+
return nil unless match
|
36
|
+
|
33
37
|
major, minor, patch, ufull, update, bfull, build = match.captures
|
34
38
|
|
35
39
|
{
|
@@ -58,4 +62,4 @@ module LogStash::Util::JavaVersion
|
|
58
62
|
false
|
59
63
|
end
|
60
64
|
end
|
61
|
-
end
|
65
|
+
end
|
data/lib/logstash/util/prctl.rb
CHANGED
data/lib/logstash/version.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require "spec_helper"
|
2
3
|
require "logstash/environment"
|
3
4
|
|
@@ -38,7 +39,18 @@ describe LogStash::Environment do
|
|
38
39
|
allow(Dir).to receive(:glob).and_return([])
|
39
40
|
expect { subject.load_runtime_jars! }.to raise_error
|
40
41
|
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
context "add_plugin_path" do
|
46
|
+
let(:path) { "/some/path" }
|
47
|
+
|
48
|
+
before(:each) { expect($LOAD_PATH).to_not include(path) }
|
49
|
+
after(:each) { $LOAD_PATH.delete(path) }
|
41
50
|
|
51
|
+
it "should add the path to $LOAD_PATH" do
|
52
|
+
expect{subject.add_plugin_path(path)}.to change{$LOAD_PATH.size}.by(1)
|
53
|
+
expect($LOAD_PATH).to include(path)
|
42
54
|
end
|
43
55
|
end
|
44
56
|
end
|
data/spec/core/event_spec.rb
CHANGED
@@ -99,6 +99,16 @@ describe LogStash::Event do
|
|
99
99
|
it "should return a json string if the key is a hash" do
|
100
100
|
expect(subject.sprintf("%{[j][k3]}")).to eq("{\"4\":\"m\"}")
|
101
101
|
end
|
102
|
+
|
103
|
+
context "#encoding" do
|
104
|
+
it "should return known patterns as UTF-8" do
|
105
|
+
expect(subject.sprintf("%{message}").encoding).to eq(Encoding::UTF_8)
|
106
|
+
end
|
107
|
+
|
108
|
+
it "should return unknown patterns as UTF-8" do
|
109
|
+
expect(subject.sprintf("%{unkown_pattern}").encoding).to eq(Encoding::UTF_8)
|
110
|
+
end
|
111
|
+
end
|
102
112
|
end
|
103
113
|
|
104
114
|
context "#[]" do
|
data/spec/core/pipeline_spec.rb
CHANGED
data/spec/core/plugin_spec.rb
CHANGED
data/spec/core/runner_spec.rb
CHANGED
data/spec/core/timestamp_spec.rb
CHANGED
data/spec/coverage_helper.rb
CHANGED
data/spec/license_spec.rb
CHANGED
data/spec/logstash/agent_spec.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe LogStash::Agent do
|
@@ -22,7 +23,7 @@ describe LogStash::Agent do
|
|
22
23
|
end
|
23
24
|
end
|
24
25
|
end
|
25
|
-
|
26
|
+
|
26
27
|
context "when remote" do
|
27
28
|
context 'supported scheme' do
|
28
29
|
let(:path) { "http://test.local/superconfig.conf" }
|
@@ -34,4 +35,28 @@ describe LogStash::Agent do
|
|
34
35
|
end
|
35
36
|
end
|
36
37
|
end
|
38
|
+
|
39
|
+
context "--pluginpath" do
|
40
|
+
let(:single_path) { "/some/path" }
|
41
|
+
let(:multiple_paths) { ["/some/path1", "/some/path2"] }
|
42
|
+
|
43
|
+
it "should add single valid dir path to the environment" do
|
44
|
+
expect(File).to receive(:directory?).and_return(true)
|
45
|
+
expect(LogStash::Environment).to receive(:add_plugin_path).with(single_path)
|
46
|
+
subject.configure_plugin_paths(single_path)
|
47
|
+
end
|
48
|
+
|
49
|
+
it "should fail with single invalid dir path" do
|
50
|
+
expect(File).to receive(:directory?).and_return(false)
|
51
|
+
expect(LogStash::Environment).not_to receive(:add_plugin_path)
|
52
|
+
expect{subject.configure_plugin_paths(single_path)}.to raise_error(LogStash::ConfigurationError)
|
53
|
+
end
|
54
|
+
|
55
|
+
it "should add multiple valid dir path to the environment" do
|
56
|
+
expect(File).to receive(:directory?).exactly(multiple_paths.size).times.and_return(true)
|
57
|
+
multiple_paths.each{|path| expect(LogStash::Environment).to receive(:add_plugin_path).with(path)}
|
58
|
+
subject.configure_plugin_paths(multiple_paths)
|
59
|
+
end
|
60
|
+
end
|
37
61
|
end
|
62
|
+
|
@@ -1,4 +1,7 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require "socket"
|
1
3
|
require "logstash/patches"
|
4
|
+
require "flores/pki"
|
2
5
|
|
3
6
|
describe "OpenSSL defaults" do
|
4
7
|
subject { OpenSSL::SSL::SSLContext.new }
|
@@ -22,4 +25,66 @@ describe "OpenSSL defaults" do
|
|
22
25
|
# SSLContext#ciphers returns an array of [ciphername, tlsversion, key_bits, alg_bits]
|
23
26
|
expect(encryption_bits).not_to be_any { |bits| bits < 128 }
|
24
27
|
end
|
28
|
+
|
29
|
+
it "should not include a default `verify_mode`" do
|
30
|
+
expect(OpenSSL::SSL::SSLContext::DEFAULT_PARAMS[:verify_mode]).to eq(nil)
|
31
|
+
end
|
32
|
+
|
33
|
+
context "SSLSocket" do
|
34
|
+
# Code taken from the flores library by @jordansissels,
|
35
|
+
# https://github.com/jordansissel/ruby-flores/blob/master/spec/flores/pki_integration_spec.rb
|
36
|
+
# since these helpers were created to fix this particular issue
|
37
|
+
let(:csr) { Flores::PKI::CertificateSigningRequest.new }
|
38
|
+
# Here, I use a 1024-bit key for faster tests.
|
39
|
+
# Please do not use such small keys in production.
|
40
|
+
let(:key_bits) { 1024 }
|
41
|
+
let(:key) { OpenSSL::PKey::RSA.generate(key_bits, 65537) }
|
42
|
+
let(:certificate_duration) { Flores::Random.number(1..86400) }
|
43
|
+
|
44
|
+
context "with self-signed client/server certificate" do
|
45
|
+
let(:certificate_subject) { "CN=server.example.com" }
|
46
|
+
let(:certificate) { csr.create }
|
47
|
+
|
48
|
+
# Returns [socket, address, port]
|
49
|
+
let(:listener) { Flores::Random.tcp_listener }
|
50
|
+
let(:server) { listener[0] }
|
51
|
+
let(:server_address) { listener[1] }
|
52
|
+
let(:server_port) { listener[2] }
|
53
|
+
|
54
|
+
let(:server_context) { OpenSSL::SSL::SSLContext.new }
|
55
|
+
let(:client_context) { OpenSSL::SSL::SSLContext.new }
|
56
|
+
|
57
|
+
before do
|
58
|
+
csr.subject = certificate_subject
|
59
|
+
csr.public_key = key.public_key
|
60
|
+
csr.start_time = Time.now
|
61
|
+
csr.expire_time = csr.start_time + certificate_duration
|
62
|
+
csr.signing_key = key
|
63
|
+
csr.want_signature_ability = true
|
64
|
+
|
65
|
+
server_context.cert = certificate
|
66
|
+
server_context.key = key
|
67
|
+
|
68
|
+
client_store = OpenSSL::X509::Store.new
|
69
|
+
client_store.add_cert(certificate)
|
70
|
+
client_context.cert_store = client_store
|
71
|
+
client_context.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
72
|
+
|
73
|
+
ssl_server = OpenSSL::SSL::SSLServer.new(server, server_context)
|
74
|
+
Thread.new do
|
75
|
+
begin
|
76
|
+
ssl_server.accept
|
77
|
+
rescue => e
|
78
|
+
puts "Server accept failed: #{e}"
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
it "should successfully connect as a client" do
|
84
|
+
socket = TCPSocket.new(server_address, server_port)
|
85
|
+
ssl_client = OpenSSL::SSL::SSLSocket.new(socket, client_context)
|
86
|
+
expect { ssl_client.connect }.not_to raise_error
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
25
90
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require 'spec_helper'
|
2
3
|
require 'logstash/util/java_version'
|
3
4
|
|
@@ -31,6 +32,14 @@ describe "LogStash::Util::JavaVersion" do
|
|
31
32
|
expect(mod.parse_java_version(nil)).to be_nil
|
32
33
|
end
|
33
34
|
|
35
|
+
it "should return nil on non-hotspot javas" do
|
36
|
+
# Not sure this is what is being returned, but it doesn't match the
|
37
|
+
# regex, which is the point
|
38
|
+
expect(mod.parse_java_version("JCL - 20140103_01 based on Oracle 7u51-b11
|
39
|
+
|
40
|
+
")).to be_nil
|
41
|
+
end
|
42
|
+
|
34
43
|
shared_examples("version parsing") do |desc, string, major, minor, patch, update, build|
|
35
44
|
context("#{desc} with version #{string}") do
|
36
45
|
subject(:parsed) { LogStash::Util::JavaVersion.parse_java_version(string) }
|
@@ -63,4 +72,4 @@ describe "LogStash::Util::JavaVersion" do
|
|
63
72
|
include_examples("version parsing", "an update+build", "1.4.0_03-beta", 1, 4, 0, 3, "beta")
|
64
73
|
end
|
65
74
|
|
66
|
-
end
|
75
|
+
end
|
data/spec/util_spec.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.4
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Jordan Sissel
|
@@ -10,162 +10,162 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2015-
|
13
|
+
date: 2015-08-20 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
|
-
name: cabin
|
17
|
-
version_requirements: !ruby/object:Gem::Requirement
|
18
|
-
requirements:
|
19
|
-
- - ~>
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: 0.7.0
|
22
16
|
requirement: !ruby/object:Gem::Requirement
|
23
17
|
requirements:
|
24
18
|
- - ~>
|
25
19
|
- !ruby/object:Gem::Version
|
26
20
|
version: 0.7.0
|
21
|
+
name: cabin
|
27
22
|
prerelease: false
|
28
23
|
type: :runtime
|
29
|
-
- !ruby/object:Gem::Dependency
|
30
|
-
name: pry
|
31
24
|
version_requirements: !ruby/object:Gem::Requirement
|
32
25
|
requirements:
|
33
26
|
- - ~>
|
34
27
|
- !ruby/object:Gem::Version
|
35
|
-
version: 0.
|
28
|
+
version: 0.7.0
|
29
|
+
- !ruby/object:Gem::Dependency
|
36
30
|
requirement: !ruby/object:Gem::Requirement
|
37
31
|
requirements:
|
38
32
|
- - ~>
|
39
33
|
- !ruby/object:Gem::Version
|
40
34
|
version: 0.10.1
|
35
|
+
name: pry
|
41
36
|
prerelease: false
|
42
37
|
type: :runtime
|
43
|
-
- !ruby/object:Gem::Dependency
|
44
|
-
name: stud
|
45
38
|
version_requirements: !ruby/object:Gem::Requirement
|
46
39
|
requirements:
|
47
40
|
- - ~>
|
48
41
|
- !ruby/object:Gem::Version
|
49
|
-
version: 0.
|
42
|
+
version: 0.10.1
|
43
|
+
- !ruby/object:Gem::Dependency
|
50
44
|
requirement: !ruby/object:Gem::Requirement
|
51
45
|
requirements:
|
52
46
|
- - ~>
|
53
47
|
- !ruby/object:Gem::Version
|
54
48
|
version: 0.0.19
|
49
|
+
name: stud
|
55
50
|
prerelease: false
|
56
51
|
type: :runtime
|
57
|
-
- !ruby/object:Gem::Dependency
|
58
|
-
name: clamp
|
59
52
|
version_requirements: !ruby/object:Gem::Requirement
|
60
53
|
requirements:
|
61
54
|
- - ~>
|
62
55
|
- !ruby/object:Gem::Version
|
63
|
-
version: 0.
|
56
|
+
version: 0.0.19
|
57
|
+
- !ruby/object:Gem::Dependency
|
64
58
|
requirement: !ruby/object:Gem::Requirement
|
65
59
|
requirements:
|
66
60
|
- - ~>
|
67
61
|
- !ruby/object:Gem::Version
|
68
62
|
version: 0.6.5
|
63
|
+
name: clamp
|
69
64
|
prerelease: false
|
70
65
|
type: :runtime
|
71
|
-
- !ruby/object:Gem::Dependency
|
72
|
-
name: filesize
|
73
66
|
version_requirements: !ruby/object:Gem::Requirement
|
74
67
|
requirements:
|
75
|
-
- -
|
68
|
+
- - ~>
|
76
69
|
- !ruby/object:Gem::Version
|
77
|
-
version: 0.
|
70
|
+
version: 0.6.5
|
71
|
+
- !ruby/object:Gem::Dependency
|
78
72
|
requirement: !ruby/object:Gem::Requirement
|
79
73
|
requirements:
|
80
74
|
- - '='
|
81
75
|
- !ruby/object:Gem::Version
|
82
76
|
version: 0.0.4
|
77
|
+
name: filesize
|
83
78
|
prerelease: false
|
84
79
|
type: :runtime
|
85
|
-
- !ruby/object:Gem::Dependency
|
86
|
-
name: gems
|
87
80
|
version_requirements: !ruby/object:Gem::Requirement
|
88
81
|
requirements:
|
89
|
-
- -
|
82
|
+
- - '='
|
90
83
|
- !ruby/object:Gem::Version
|
91
|
-
version: 0.
|
84
|
+
version: 0.0.4
|
85
|
+
- !ruby/object:Gem::Dependency
|
92
86
|
requirement: !ruby/object:Gem::Requirement
|
93
87
|
requirements:
|
94
88
|
- - ~>
|
95
89
|
- !ruby/object:Gem::Version
|
96
90
|
version: 0.8.3
|
91
|
+
name: gems
|
97
92
|
prerelease: false
|
98
93
|
type: :runtime
|
99
|
-
- !ruby/object:Gem::Dependency
|
100
|
-
name: treetop
|
101
94
|
version_requirements: !ruby/object:Gem::Requirement
|
102
95
|
requirements:
|
103
|
-
- -
|
96
|
+
- - ~>
|
104
97
|
- !ruby/object:Gem::Version
|
105
|
-
version:
|
98
|
+
version: 0.8.3
|
99
|
+
- !ruby/object:Gem::Dependency
|
106
100
|
requirement: !ruby/object:Gem::Requirement
|
107
101
|
requirements:
|
108
102
|
- - <
|
109
103
|
- !ruby/object:Gem::Version
|
110
104
|
version: 1.5.0
|
105
|
+
name: treetop
|
111
106
|
prerelease: false
|
112
107
|
type: :runtime
|
113
|
-
- !ruby/object:Gem::Dependency
|
114
|
-
name: i18n
|
115
108
|
version_requirements: !ruby/object:Gem::Requirement
|
116
109
|
requirements:
|
117
|
-
- -
|
110
|
+
- - <
|
118
111
|
- !ruby/object:Gem::Version
|
119
|
-
version:
|
112
|
+
version: 1.5.0
|
113
|
+
- !ruby/object:Gem::Dependency
|
120
114
|
requirement: !ruby/object:Gem::Requirement
|
121
115
|
requirements:
|
122
116
|
- - '='
|
123
117
|
- !ruby/object:Gem::Version
|
124
118
|
version: 0.6.9
|
119
|
+
name: i18n
|
125
120
|
prerelease: false
|
126
121
|
type: :runtime
|
127
|
-
- !ruby/object:Gem::Dependency
|
128
|
-
name: minitar
|
129
122
|
version_requirements: !ruby/object:Gem::Requirement
|
130
123
|
requirements:
|
131
|
-
- -
|
124
|
+
- - '='
|
132
125
|
- !ruby/object:Gem::Version
|
133
|
-
version: 0.
|
126
|
+
version: 0.6.9
|
127
|
+
- !ruby/object:Gem::Dependency
|
134
128
|
requirement: !ruby/object:Gem::Requirement
|
135
129
|
requirements:
|
136
130
|
- - ~>
|
137
131
|
- !ruby/object:Gem::Version
|
138
132
|
version: 0.5.4
|
133
|
+
name: minitar
|
139
134
|
prerelease: false
|
140
135
|
type: :runtime
|
141
|
-
- !ruby/object:Gem::Dependency
|
142
|
-
name: thread_safe
|
143
136
|
version_requirements: !ruby/object:Gem::Requirement
|
144
137
|
requirements:
|
145
138
|
- - ~>
|
146
139
|
- !ruby/object:Gem::Version
|
147
|
-
version: 0.
|
140
|
+
version: 0.5.4
|
141
|
+
- !ruby/object:Gem::Dependency
|
148
142
|
requirement: !ruby/object:Gem::Requirement
|
149
143
|
requirements:
|
150
144
|
- - ~>
|
151
145
|
- !ruby/object:Gem::Version
|
152
146
|
version: 0.3.5
|
147
|
+
name: thread_safe
|
153
148
|
prerelease: false
|
154
149
|
type: :runtime
|
155
|
-
- !ruby/object:Gem::Dependency
|
156
|
-
name: jrjackson
|
157
150
|
version_requirements: !ruby/object:Gem::Requirement
|
158
151
|
requirements:
|
159
152
|
- - ~>
|
160
153
|
- !ruby/object:Gem::Version
|
161
|
-
version: 0.
|
154
|
+
version: 0.3.5
|
155
|
+
- !ruby/object:Gem::Dependency
|
162
156
|
requirement: !ruby/object:Gem::Requirement
|
163
157
|
requirements:
|
164
158
|
- - ~>
|
165
159
|
- !ruby/object:Gem::Version
|
166
160
|
version: 0.2.9
|
161
|
+
name: jrjackson
|
167
162
|
prerelease: false
|
168
163
|
type: :runtime
|
164
|
+
version_requirements: !ruby/object:Gem::Requirement
|
165
|
+
requirements:
|
166
|
+
- - ~>
|
167
|
+
- !ruby/object:Gem::Version
|
168
|
+
version: 0.2.9
|
169
169
|
description: The core components of logstash, the scalable log and event management tool
|
170
170
|
email:
|
171
171
|
- jls@semicomplete.com
|
@@ -270,12 +270,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
270
270
|
version: '0'
|
271
271
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
272
272
|
requirements:
|
273
|
-
- - '
|
273
|
+
- - '>='
|
274
274
|
- !ruby/object:Gem::Version
|
275
|
-
version:
|
275
|
+
version: '0'
|
276
276
|
requirements: []
|
277
277
|
rubyforge_project:
|
278
|
-
rubygems_version: 2.
|
278
|
+
rubygems_version: 2.4.8
|
279
279
|
signing_key:
|
280
280
|
specification_version: 4
|
281
281
|
summary: logstash-core - The core components of logstash
|