logstash-core 5.2.0-java → 5.2.1-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.
- checksums.yaml +4 -4
- data/lib/logstash-core/logstash-core.jar +0 -0
- data/lib/logstash-core/version.rb +1 -1
- data/lib/logstash/plugin.rb +8 -6
- data/lib/logstash/settings.rb +26 -0
- data/lib/logstash/shutdown_watcher.rb +1 -1
- data/lib/logstash/util/safe_uri.rb +5 -0
- data/lib/logstash/version.rb +1 -1
- data/spec/logstash/settings/array_coercible_spec.rb +46 -0
- data/spec/logstash/util/safe_uri_spec.rb +20 -0
- metadata +10 -6
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: c4df5ad1b48f429f25bc3f16f97973b531b3c5d6
         | 
| 4 | 
            +
              data.tar.gz: 1a59f8132f4156de4cb846d05a417e2d44ba6164
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 1487f73f2dba8861338bf93548c9b5dfac360fc2ecc26c6a776cffa0cec848426e1422dc9ae1178c7cdb2759fcf62be3d8f690419cbf9bce0a8b04f75ad06370
         | 
| 7 | 
            +
              data.tar.gz: 24a249aca51af3100d5c533f5a0491480718ad145b806f148ea36e366e05a35378366aa2819d98bb5c6f2a7dda0f0446103a04d33a27d6ac47d4296741ab2c90
         | 
| Binary file | 
    
        data/lib/logstash/plugin.rb
    CHANGED
    
    | @@ -19,18 +19,20 @@ class LogStash::Plugin | |
| 19 19 | 
             
              # for a specific plugin.
         | 
| 20 20 | 
             
              config :enable_metric, :validate => :boolean, :default => true
         | 
| 21 21 |  | 
| 22 | 
            -
              # Add a unique `ID` to the plugin  | 
| 23 | 
            -
              #  | 
| 22 | 
            +
              # Add a unique `ID` to the plugin configuration. If no ID is specified, Logstash will generate one. 
         | 
| 23 | 
            +
              # It is strongly recommended to set this ID in your configuration. This is particulary useful 
         | 
| 24 | 
            +
              # when you have two or more plugins of the same type, for example, if you have 2 grok filters. 
         | 
| 25 | 
            +
              # Adding a named ID in this case will help in monitoring Logstash when using the monitoring APIs.
         | 
| 24 26 | 
             
              #
         | 
| 25 | 
            -
              #  | 
| 27 | 
            +
              # [source,ruby]
         | 
| 28 | 
            +
              # ---------------------------------------------------------------------------------------------------
         | 
| 26 29 | 
             
              # output {
         | 
| 27 30 | 
             
              #  stdout {
         | 
| 28 | 
            -
              #    id => " | 
| 31 | 
            +
              #    id => "my_plugin_id"
         | 
| 29 32 | 
             
              #  }
         | 
| 30 33 | 
             
              # }
         | 
| 31 | 
            -
              #  | 
| 34 | 
            +
              # ---------------------------------------------------------------------------------------------------
         | 
| 32 35 | 
             
              #
         | 
| 33 | 
            -
              # If you don't explicitely set this variable Logstash will generate a unique name.
         | 
| 34 36 | 
             
              config :id, :validate => :string
         | 
| 35 37 |  | 
| 36 38 | 
             
              def hash
         | 
    
        data/lib/logstash/settings.rb
    CHANGED
    
    | @@ -489,6 +489,32 @@ module LogStash | |
| 489 489 | 
             
                    Util::TimeValue.from_value(value).to_nanos
         | 
| 490 490 | 
             
                  end
         | 
| 491 491 | 
             
                end
         | 
| 492 | 
            +
             | 
| 493 | 
            +
                class ArrayCoercible < Coercible
         | 
| 494 | 
            +
                  def initialize(name, klass, default, strict=true, &validator_proc)
         | 
| 495 | 
            +
                    @element_class = klass
         | 
| 496 | 
            +
                    super(name, ::Array, default, strict, &validator_proc)
         | 
| 497 | 
            +
                  end
         | 
| 498 | 
            +
             | 
| 499 | 
            +
                  def coerce(value)
         | 
| 500 | 
            +
                    Array(value)
         | 
| 501 | 
            +
                  end
         | 
| 502 | 
            +
             | 
| 503 | 
            +
                  protected
         | 
| 504 | 
            +
                  def validate(input)
         | 
| 505 | 
            +
                    if !input.is_a?(@klass)
         | 
| 506 | 
            +
                      raise ArgumentError.new("Setting \"#{@name}\" must be a #{@klass}. Received: #{input} (#{input.class})")
         | 
| 507 | 
            +
                    end
         | 
| 508 | 
            +
             | 
| 509 | 
            +
                    unless input.all? {|el| el.kind_of?(@element_class) }
         | 
| 510 | 
            +
                      raise ArgumentError.new("Values of setting \"#{@name}\" must be #{@element_class}. Received: #{input.map(&:class)}")
         | 
| 511 | 
            +
                    end
         | 
| 512 | 
            +
             | 
| 513 | 
            +
                    if @validator_proc && !@validator_proc.call(input)
         | 
| 514 | 
            +
                      raise ArgumentError.new("Failed to validate setting \"#{@name}\" with value: #{input}")
         | 
| 515 | 
            +
                    end
         | 
| 516 | 
            +
                  end
         | 
| 517 | 
            +
                end
         | 
| 492 518 | 
             
              end
         | 
| 493 519 |  | 
| 494 520 |  | 
| @@ -44,7 +44,7 @@ module LogStash | |
| 44 44 | 
             
                    @reports << pipeline_report_snapshot
         | 
| 45 45 | 
             
                    @reports.delete_at(0) if @reports.size > @report_every # expire old report
         | 
| 46 46 | 
             
                    if cycle_number == (@report_every - 1) # it's report time!
         | 
| 47 | 
            -
                      logger.warn(@reports.last)
         | 
| 47 | 
            +
                      logger.warn(@reports.last.to_s)
         | 
| 48 48 |  | 
| 49 49 | 
             
                      if shutdown_stalled?
         | 
| 50 50 | 
             
                        logger.error("The shutdown process appears to be stalled due to busy or blocked plugins. Check the logs for more information.") if stalled_count == 0
         | 
    
        data/lib/logstash/version.rb
    CHANGED
    
    
| @@ -0,0 +1,46 @@ | |
| 1 | 
            +
            # encoding: utf-8
         | 
| 2 | 
            +
            require "spec_helper"
         | 
| 3 | 
            +
            require "logstash/settings"
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            describe LogStash::Setting::ArrayCoercible do
         | 
| 6 | 
            +
              subject { described_class.new("option", element_class, value) }
         | 
| 7 | 
            +
              let(:value) { [ ] }
         | 
| 8 | 
            +
              let(:element_class) { Object }
         | 
| 9 | 
            +
             | 
| 10 | 
            +
              context "when given a non array value" do
         | 
| 11 | 
            +
                let(:value) { "test" }
         | 
| 12 | 
            +
                describe "the value" do
         | 
| 13 | 
            +
                  it "is converted to an array with that single element" do
         | 
| 14 | 
            +
                    expect(subject.value).to eq(["test"])
         | 
| 15 | 
            +
                  end
         | 
| 16 | 
            +
                end
         | 
| 17 | 
            +
              end
         | 
| 18 | 
            +
             | 
| 19 | 
            +
              context "when given an array value" do
         | 
| 20 | 
            +
                let(:value) { ["test"] }
         | 
| 21 | 
            +
                describe "the value" do
         | 
| 22 | 
            +
                  it "is not modified" do
         | 
| 23 | 
            +
                    expect(subject.value).to eq(value)
         | 
| 24 | 
            +
                  end
         | 
| 25 | 
            +
                end
         | 
| 26 | 
            +
              end
         | 
| 27 | 
            +
             | 
| 28 | 
            +
              describe "initialization" do
         | 
| 29 | 
            +
                subject { described_class }
         | 
| 30 | 
            +
                let(:element_class) { Fixnum }
         | 
| 31 | 
            +
                context "when given values of incorrect element class" do
         | 
| 32 | 
            +
                  let(:value) { "test" }
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                  it "will raise an exception" do
         | 
| 35 | 
            +
                    expect { described_class.new("option", element_class, value) }.to raise_error(ArgumentError)
         | 
| 36 | 
            +
                  end
         | 
| 37 | 
            +
                end
         | 
| 38 | 
            +
                context "when given values of correct element class" do
         | 
| 39 | 
            +
                  let(:value) { 1 }
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                  it "will not raise an exception" do
         | 
| 42 | 
            +
                    expect { described_class.new("option", element_class, value) }.not_to raise_error
         | 
| 43 | 
            +
                  end
         | 
| 44 | 
            +
                end
         | 
| 45 | 
            +
              end
         | 
| 46 | 
            +
            end
         | 
| @@ -0,0 +1,20 @@ | |
| 1 | 
            +
            # encoding: utf-8
         | 
| 2 | 
            +
            require "logstash/util/safe_uri"
         | 
| 3 | 
            +
            require "spec_helper"
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module LogStash module Util
         | 
| 6 | 
            +
              describe SafeURI do
         | 
| 7 | 
            +
                describe "#clone" do
         | 
| 8 | 
            +
                  subject { LogStash::Util::SafeURI.new("http://localhost:9200/uri?q=s") }
         | 
| 9 | 
            +
                  it "allows modifying uri parameters" do
         | 
| 10 | 
            +
                    cloned_safe_uri = subject.clone
         | 
| 11 | 
            +
                    cloned_safe_uri.path = "/cloned"
         | 
| 12 | 
            +
                    cloned_safe_uri.query = "a=b"
         | 
| 13 | 
            +
                    expect(subject.path).to eq("/uri")
         | 
| 14 | 
            +
                    expect(subject.query).to eq("q=s")
         | 
| 15 | 
            +
                    expect(cloned_safe_uri.path).to eq("/cloned")
         | 
| 16 | 
            +
                    expect(cloned_safe_uri.query).to eq("a=b")
         | 
| 17 | 
            +
                  end
         | 
| 18 | 
            +
                end
         | 
| 19 | 
            +
              end
         | 
| 20 | 
            +
            end end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,21 +1,21 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: logstash-core
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 5.2. | 
| 4 | 
            +
              version: 5.2.1
         | 
| 5 5 | 
             
            platform: java
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Elastic
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2017- | 
| 11 | 
            +
            date: 2017-02-09 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 15 15 | 
             
                requirements:
         | 
| 16 16 | 
             
                - - '='
         | 
| 17 17 | 
             
                  - !ruby/object:Gem::Version
         | 
| 18 | 
            -
                    version: 5.2. | 
| 18 | 
            +
                    version: 5.2.1
         | 
| 19 19 | 
             
              name: logstash-core-event-java
         | 
| 20 20 | 
             
              prerelease: false
         | 
| 21 21 | 
             
              type: :runtime
         | 
| @@ -23,13 +23,13 @@ dependencies: | |
| 23 23 | 
             
                requirements:
         | 
| 24 24 | 
             
                - - '='
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: 5.2. | 
| 26 | 
            +
                    version: 5.2.1
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 29 29 | 
             
                requirements:
         | 
| 30 30 | 
             
                - - '='
         | 
| 31 31 | 
             
                  - !ruby/object:Gem::Version
         | 
| 32 | 
            -
                    version: 5.2. | 
| 32 | 
            +
                    version: 5.2.1
         | 
| 33 33 | 
             
              name: logstash-core-queue-jruby
         | 
| 34 34 | 
             
              prerelease: false
         | 
| 35 35 | 
             
              type: :runtime
         | 
| @@ -37,7 +37,7 @@ dependencies: | |
| 37 37 | 
             
                requirements:
         | 
| 38 38 | 
             
                - - '='
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version: 5.2. | 
| 40 | 
            +
                    version: 5.2.1
         | 
| 41 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 42 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 43 43 | 
             
                requirements:
         | 
| @@ -484,6 +484,7 @@ files: | |
| 484 484 | 
             
            - spec/logstash/plugins/registry_spec.rb
         | 
| 485 485 | 
             
            - spec/logstash/runner_spec.rb
         | 
| 486 486 | 
             
            - spec/logstash/setting_spec.rb
         | 
| 487 | 
            +
            - spec/logstash/settings/array_coercible_spec.rb
         | 
| 487 488 | 
             
            - spec/logstash/settings/bytes_spec.rb
         | 
| 488 489 | 
             
            - spec/logstash/settings/integer_spec.rb
         | 
| 489 490 | 
             
            - spec/logstash/settings/numeric_spec.rb
         | 
| @@ -499,6 +500,7 @@ files: | |
| 499 500 | 
             
            - spec/logstash/util/duration_formatter_spec.rb
         | 
| 500 501 | 
             
            - spec/logstash/util/java_version_spec.rb
         | 
| 501 502 | 
             
            - spec/logstash/util/plugin_version_spec.rb
         | 
| 503 | 
            +
            - spec/logstash/util/safe_uri_spec.rb
         | 
| 502 504 | 
             
            - spec/logstash/util/time_value_spec.rb
         | 
| 503 505 | 
             
            - spec/logstash/util/unicode_trimmer_spec.rb
         | 
| 504 506 | 
             
            - spec/logstash/util/wrapped_synchronous_queue_spec.rb
         | 
| @@ -588,6 +590,7 @@ test_files: | |
| 588 590 | 
             
            - spec/logstash/plugins/registry_spec.rb
         | 
| 589 591 | 
             
            - spec/logstash/runner_spec.rb
         | 
| 590 592 | 
             
            - spec/logstash/setting_spec.rb
         | 
| 593 | 
            +
            - spec/logstash/settings/array_coercible_spec.rb
         | 
| 591 594 | 
             
            - spec/logstash/settings/bytes_spec.rb
         | 
| 592 595 | 
             
            - spec/logstash/settings/integer_spec.rb
         | 
| 593 596 | 
             
            - spec/logstash/settings/numeric_spec.rb
         | 
| @@ -603,6 +606,7 @@ test_files: | |
| 603 606 | 
             
            - spec/logstash/util/duration_formatter_spec.rb
         | 
| 604 607 | 
             
            - spec/logstash/util/java_version_spec.rb
         | 
| 605 608 | 
             
            - spec/logstash/util/plugin_version_spec.rb
         | 
| 609 | 
            +
            - spec/logstash/util/safe_uri_spec.rb
         | 
| 606 610 | 
             
            - spec/logstash/util/time_value_spec.rb
         | 
| 607 611 | 
             
            - spec/logstash/util/unicode_trimmer_spec.rb
         | 
| 608 612 | 
             
            - spec/logstash/util/wrapped_synchronous_queue_spec.rb
         |