logstash-core 6.3.2-java → 6.4.0-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.
Files changed (139) hide show
  1. checksums.yaml +4 -4
  2. data/lib/logstash/agent.rb +10 -6
  3. data/lib/logstash/api/modules/logging.rb +4 -0
  4. data/lib/logstash/api/service.rb +0 -1
  5. data/lib/logstash/bootstrap_check/default_config.rb +0 -2
  6. data/lib/logstash/bootstrap_check/persisted_queue_config.rb +0 -1
  7. data/lib/logstash/codecs/base.rb +2 -4
  8. data/lib/logstash/compiler.rb +2 -3
  9. data/lib/logstash/compiler/lscl.rb +0 -1
  10. data/lib/logstash/config/config_ast.rb +0 -1
  11. data/lib/logstash/config/cpu_core_strategy.rb +0 -1
  12. data/lib/logstash/config/defaults.rb +0 -1
  13. data/lib/logstash/config/file.rb +0 -2
  14. data/lib/logstash/config/mixin.rb +4 -7
  15. data/lib/logstash/config/modules_common.rb +0 -2
  16. data/lib/logstash/config/source/local.rb +1 -3
  17. data/lib/logstash/config/source/modules.rb +0 -2
  18. data/lib/logstash/config/source/multi_local.rb +0 -1
  19. data/lib/logstash/config/source_loader.rb +1 -2
  20. data/lib/logstash/dependency_report.rb +19 -6
  21. data/lib/logstash/elasticsearch_client.rb +0 -2
  22. data/lib/logstash/environment.rb +3 -2
  23. data/lib/logstash/errors.rb +1 -15
  24. data/lib/logstash/event.rb +0 -1
  25. data/lib/logstash/event_dispatcher.rb +1 -40
  26. data/lib/logstash/execution_context.rb +2 -19
  27. data/lib/logstash/filters/base.rb +0 -2
  28. data/lib/logstash/inputs/base.rb +2 -4
  29. data/lib/logstash/inputs/threadable.rb +2 -3
  30. data/lib/logstash/instrument/collector.rb +0 -2
  31. data/lib/logstash/instrument/metric.rb +1 -105
  32. data/lib/logstash/instrument/namespaced_metric.rb +1 -58
  33. data/lib/logstash/instrument/namespaced_null_metric.rb +1 -58
  34. data/lib/logstash/instrument/null_metric.rb +2 -71
  35. data/lib/logstash/instrument/periodic_poller/base.rb +0 -1
  36. data/lib/logstash/instrument/periodic_poller/cgroup.rb +0 -1
  37. data/lib/logstash/java_pipeline.rb +33 -222
  38. data/lib/logstash/json.rb +0 -1
  39. data/lib/logstash/logging.rb +0 -2
  40. data/lib/logstash/logging/logger.rb +1 -159
  41. data/lib/logstash/modules/cli_parser.rb +0 -4
  42. data/lib/logstash/modules/elasticsearch_config.rb +0 -3
  43. data/lib/logstash/modules/elasticsearch_importer.rb +0 -3
  44. data/lib/logstash/modules/elasticsearch_resource.rb +0 -1
  45. data/lib/logstash/modules/file_reader.rb +0 -2
  46. data/lib/logstash/modules/kibana_base.rb +0 -1
  47. data/lib/logstash/modules/kibana_client.rb +0 -2
  48. data/lib/logstash/modules/kibana_config.rb +0 -3
  49. data/lib/logstash/modules/kibana_dashboards.rb +0 -2
  50. data/lib/logstash/modules/kibana_importer.rb +0 -3
  51. data/lib/logstash/modules/kibana_resource.rb +0 -1
  52. data/lib/logstash/modules/kibana_settings.rb +0 -2
  53. data/lib/logstash/modules/logstash_config.rb +0 -1
  54. data/lib/logstash/modules/resource_base.rb +0 -1
  55. data/lib/logstash/modules/scaffold.rb +0 -3
  56. data/lib/logstash/modules/settings_merger.rb +0 -2
  57. data/lib/logstash/namespace.rb +2 -15
  58. data/lib/logstash/outputs/base.rb +3 -5
  59. data/lib/logstash/patches/clamp.rb +6 -0
  60. data/lib/logstash/pipeline.rb +38 -180
  61. data/lib/logstash/pipeline_action/create.rb +0 -2
  62. data/lib/logstash/pipeline_action/reload.rb +1 -4
  63. data/lib/logstash/pipeline_action/stop.rb +0 -2
  64. data/lib/logstash/pipeline_reporter.rb +2 -108
  65. data/lib/logstash/plugin.rb +4 -7
  66. data/lib/logstash/plugins/hooks_registry.rb +1 -63
  67. data/lib/logstash/plugins/registry.rb +3 -2
  68. data/lib/logstash/runner.rb +6 -7
  69. data/lib/logstash/settings.rb +4 -5
  70. data/lib/logstash/shutdown_watcher.rb +0 -119
  71. data/lib/logstash/universal_plugin.rb +1 -13
  72. data/lib/logstash/util.rb +0 -1
  73. data/lib/logstash/util/buftok.rb +1 -139
  74. data/lib/logstash/util/byte_value.rb +2 -3
  75. data/lib/logstash/util/charset.rb +0 -1
  76. data/lib/logstash/util/cloud_setting_auth.rb +0 -1
  77. data/lib/logstash/util/cloud_setting_id.rb +20 -8
  78. data/lib/logstash/util/dead_letter_queue_manager.rb +2 -61
  79. data/lib/logstash/util/decorators.rb +0 -1
  80. data/lib/logstash/util/loggable.rb +1 -31
  81. data/lib/logstash/util/modules_setting_array.rb +2 -2
  82. data/lib/logstash/util/password.rb +0 -1
  83. data/lib/logstash/util/plugin_version.rb +0 -1
  84. data/lib/logstash/util/safe_uri.rb +7 -8
  85. data/lib/logstash/util/secretstore.rb +1 -38
  86. data/lib/logstash/util/substitution_variables.rb +4 -5
  87. data/lib/logstash/util/worker_threads_default_printer.rb +0 -1
  88. data/locales/en.yml +28 -1
  89. data/spec/logstash/config/mixin_spec.rb +4 -4
  90. data/spec/logstash/converge_result_spec.rb +0 -1
  91. data/spec/logstash/event_dispatcher_spec.rb +0 -2
  92. data/spec/logstash/event_spec.rb +22 -26
  93. data/spec/logstash/execution_context_spec.rb +0 -2
  94. data/spec/logstash/filter_delegator_spec.rb +12 -28
  95. data/spec/logstash/inputs/base_spec.rb +4 -5
  96. data/spec/logstash/instrument/metric_spec.rb +0 -1
  97. data/spec/logstash/instrument/namespaced_metric_spec.rb +0 -2
  98. data/spec/logstash/instrument/namespaced_null_metric_spec.rb +1 -3
  99. data/spec/logstash/instrument/null_metric_spec.rb +1 -4
  100. data/spec/logstash/instrument/periodic_poller/base_spec.rb +0 -1
  101. data/spec/logstash/instrument/periodic_poller/os_spec.rb +0 -1
  102. data/spec/logstash/instrument/wrapped_write_client_spec.rb +0 -1
  103. data/spec/logstash/java_filter_delegator_spec.rb +0 -3
  104. data/spec/logstash/java_integration_spec.rb +0 -1
  105. data/spec/logstash/java_pipeline_spec.rb +1 -4
  106. data/spec/logstash/modules/cli_parser_spec.rb +1 -3
  107. data/spec/logstash/modules/scaffold_spec.rb +0 -1
  108. data/spec/logstash/outputs/base_spec.rb +9 -10
  109. data/spec/logstash/pipeline_action/create_spec.rb +2 -3
  110. data/spec/logstash/pipeline_action/reload_spec.rb +1 -2
  111. data/spec/logstash/pipeline_action/stop_spec.rb +0 -1
  112. data/spec/logstash/pipeline_dlq_commit_spec.rb +0 -6
  113. data/spec/logstash/pipeline_reporter_spec.rb +18 -4
  114. data/spec/logstash/pipeline_spec.rb +2 -6
  115. data/spec/logstash/plugin_spec.rb +1 -2
  116. data/spec/logstash/plugins/hooks_registry_spec.rb +0 -2
  117. data/spec/logstash/queue_factory_spec.rb +0 -1
  118. data/spec/logstash/runner_spec.rb +16 -9
  119. data/spec/logstash/settings/modules_spec.rb +3 -3
  120. data/spec/logstash/shutdown_watcher_spec.rb +0 -27
  121. data/spec/logstash/state_resolver_spec.rb +0 -1
  122. data/spec/logstash/util/buftok_spec.rb +0 -1
  123. data/spec/logstash/util/cloud_setting_id_spec.rb +55 -2
  124. data/spec/logstash/util/secretstore_spec.rb +10 -10
  125. data/spec/logstash/util/wrapped_synchronous_queue_spec.rb +2 -2
  126. data/versions-gem-copy.yml +2 -2
  127. metadata +2 -16
  128. data/lib/logstash/bootstrap_check/bad_java.rb +0 -16
  129. data/lib/logstash/bootstrap_check/bad_ruby.rb +0 -12
  130. data/lib/logstash/converge_result.rb +0 -103
  131. data/lib/logstash/instrument/global_metrics.rb +0 -13
  132. data/lib/logstash/instrument/snapshot.rb +0 -15
  133. data/lib/logstash/java_integration.rb +0 -116
  134. data/lib/logstash/logging/json.rb +0 -21
  135. data/lib/logstash/plugins/plugin_factory.rb +0 -107
  136. data/lib/logstash/queue_factory.rb +0 -34
  137. data/lib/logstash/util/retryable.rb +0 -40
  138. data/spec/logstash/output_delegator_spec.rb +0 -201
  139. data/spec/logstash/timestamp_spec.rb +0 -45
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 999e61360e29d34d6dbf15eebfa5a852f0114cc034c876e65f0ee434aadbefd7
4
- data.tar.gz: 0366ea08d19ed8f15316c6b48ab8262ac8f5f810be24308017b445624578ed5c
3
+ metadata.gz: 75e766866b8e8de1c59212aab21120296be4a2b3768e736e9fc7fae7851d6687
4
+ data.tar.gz: 6c9f88892074eaa5c909df9365f94e58e5ec6781c559268b72fdc3c47f59be57
5
5
  SHA512:
6
- metadata.gz: 83bb9dc76db210ebf2a1d6f1094b2f0aaf2aa4e1fdeca7b97c9682b585138b67f45b1138357b096da241cf9145b787db83d615e62fdca072c80675c1769d4e92
7
- data.tar.gz: c1d165d04b42ba541b42110f4e640cfa3f818a74c585a564df0c45bef69a43a2d6b137f04fb1fd57313994220ac80ec9d7ca862611d77dae6248da476b2ed2c4
6
+ metadata.gz: 3dc2bdc1806597be02fd49c75f7c2060543b5decbbb6c5657d680798d2092cabce49044fe8d08490a0ee37f507f4ff5bed5c71b21e72790a81b99e143a58c52d
7
+ data.tar.gz: 482cbc47fc99ff43101b28bf0f6fff6488fe1faeeea717a1934afd8dde672d4efd523a7f56749bc4f3822628029ac39b525f66e9d0a6c1207e7cc5292793effb
@@ -1,18 +1,12 @@
1
1
  # encoding: utf-8
2
2
  require "logstash/environment"
3
- require "logstash/errors"
4
3
  require "logstash/config/cpu_core_strategy"
5
4
  require "logstash/instrument/collector"
6
- require "logstash/instrument/metric"
7
5
  require "logstash/instrument/periodic_pollers"
8
- require "logstash/instrument/collector"
9
- require "logstash/instrument/metric"
10
6
  require "logstash/pipeline"
11
7
  require "logstash/webserver"
12
- require "logstash/event_dispatcher"
13
8
  require "logstash/config/source_loader"
14
9
  require "logstash/pipeline_action"
15
- require "logstash/converge_result"
16
10
  require "logstash/state_resolver"
17
11
  require "stud/trap"
18
12
  require "uri"
@@ -51,6 +45,16 @@ class LogStash::Agent
51
45
  # Generate / load the persistent uuid
52
46
  id
53
47
 
48
+ # Set the global FieldReference parsing mode
49
+ parsing_mode = case setting('config.field_reference.parser')
50
+ when 'COMPAT' then org.logstash.FieldReference::ParsingMode::COMPAT;
51
+ when 'LEGACY' then org.logstash.FieldReference::ParsingMode::LEGACY;
52
+ when 'STRICT' then org.logstash.FieldReference::ParsingMode::STRICT;
53
+ else fail('Unsupported FieldReference parsing mode')
54
+ end
55
+ logger.debug("Setting global FieldReference parsing mode: #{parsing_mode}")
56
+ org.logstash.FieldReference::set_parsing_mode(parsing_mode)
57
+
54
58
  # This is for backward compatibility in the tests
55
59
  if source_loader.nil?
56
60
  @source_loader = LogStash::Config::SourceLoader.new
@@ -1,6 +1,7 @@
1
1
  # encoding: utf-8
2
2
  #
3
3
  java_import org.apache.logging.log4j.core.LoggerContext
4
+ java_import java.lang.IllegalArgumentException
4
5
 
5
6
  module LogStash
6
7
  module Api
@@ -30,6 +31,9 @@ module LogStash
30
31
  raise ArgumentError, I18n.t("logstash.web_api.logging.unrecognized_option", :option => remaining.keys.first)
31
32
  end
32
33
  respond_with({"acknowledged" => true})
34
+ rescue IllegalArgumentException => e
35
+ status 400
36
+ respond_with({"error" => e.message})
33
37
  rescue ArgumentError => e
34
38
  status 400
35
39
  respond_with({"error" => e.message})
@@ -1,6 +1,5 @@
1
1
  # encoding: utf-8
2
2
  require "logstash/instrument/collector"
3
- require "logstash/util/loggable"
4
3
 
5
4
  module LogStash
6
5
  module Api
@@ -1,6 +1,4 @@
1
1
  # encoding: utf-8
2
- require "logstash/errors"
3
- require "logstash/logging"
4
2
 
5
3
  module LogStash module BootstrapCheck
6
4
  class DefaultConfig
@@ -1,5 +1,4 @@
1
1
  # encoding: utf-8
2
- require 'logstash/errors'
3
2
 
4
3
  module LogStash
5
4
  module BootstrapCheck
@@ -1,8 +1,6 @@
1
1
  # encoding: utf-8
2
- require "logstash/namespace"
3
2
  require "logstash/event"
4
3
  require "logstash/plugin"
5
- require "logstash/logging"
6
4
 
7
5
  # This is the base class for logstash codecs.
8
6
  module LogStash::Codecs; class Base < LogStash::Plugin
@@ -41,12 +39,12 @@ module LogStash::Codecs; class Base < LogStash::Plugin
41
39
  # over the current API for shared plugins
42
40
  # It is best if the codec implements this directly
43
41
  def multi_encode(events)
44
- if @has_encode_sync
42
+ if @has_encode_sync
45
43
  events.map {|event| [event, self.encode_sync(event)]}
46
44
  else
47
45
  batch = Thread.current[:logstash_output_codec_batch] ||= []
48
46
  batch.clear
49
-
47
+
50
48
  events.each {|event| self.encode(event) }
51
49
  batch
52
50
  end
@@ -1,4 +1,3 @@
1
- require 'logstash/util/loggable'
2
1
  require 'logstash/compiler/lscl/lscl_grammar'
3
2
 
4
3
  java_import org.logstash.config.ir.PipelineIR
@@ -15,10 +14,10 @@ module LogStash; class Compiler
15
14
  input_graph = Graph.combine(*graph_sections.map {|s| s[:input] }).graph
16
15
  output_graph = Graph.combine(*graph_sections.map {|s| s[:output] }).graph
17
16
 
18
- filter_graph = graph_sections.reduce(nil) do |acc, s|
17
+ filter_graph = graph_sections.reduce(nil) do |acc, s|
19
18
  filter_section = s[:filter]
20
19
 
21
- if acc.nil?
20
+ if acc.nil?
22
21
  filter_section
23
22
  else
24
23
  acc.chain(filter_section)
@@ -1,5 +1,4 @@
1
1
  # encoding: utf-8
2
- require 'logstash/errors'
3
2
  require "treetop"
4
3
  require "logstash/compiler/treetop_monkeypatches"
5
4
  require "logstash/compiler/lscl/helpers"
@@ -1,5 +1,4 @@
1
1
  # encoding: utf-8
2
- require 'logstash/errors'
3
2
  require "logstash/compiler/lscl/helpers"
4
3
  require "treetop"
5
4
 
@@ -1,5 +1,4 @@
1
1
  # encoding: utf-8
2
- require "logstash/namespace"
3
2
  require "logstash/config/defaults"
4
3
 
5
4
  module LogStash module Config module CpuCoreStrategy
@@ -1,5 +1,4 @@
1
1
  # encoding: utf-8
2
- require "logstash/namespace"
3
2
  require "concurrent"
4
3
 
5
4
  module LogStash module Config module Defaults
@@ -1,8 +1,6 @@
1
1
  # encoding: utf-8
2
- require "logstash/namespace"
3
2
  require "logstash/config/grammar"
4
3
  require "logstash/config/config_ast"
5
- require "logstash/errors"
6
4
  require "logger"
7
5
 
8
6
  class LogStash::Config::File
@@ -1,7 +1,4 @@
1
1
  # encoding: utf-8
2
- require "logstash/namespace"
3
- require "logstash/plugins/registry"
4
- require "logstash/logging"
5
2
  require "logstash/util/password"
6
3
  require "logstash/util/safe_uri"
7
4
  require "logstash/version"
@@ -33,21 +30,21 @@ LogStash::Environment.load_locale!
33
30
  # }
34
31
  #
35
32
  module LogStash::Config::Mixin
36
-
33
+
37
34
  include LogStash::Util::SubstitutionVariables
38
-
35
+
39
36
  attr_accessor :config
40
37
  attr_accessor :original_params
41
38
 
42
39
  PLUGIN_VERSION_1_0_0 = LogStash::Util::PluginVersion.new(1, 0, 0)
43
40
  PLUGIN_VERSION_0_9_0 = LogStash::Util::PluginVersion.new(0, 9, 0)
44
-
41
+
45
42
  # This method is called when someone does 'include LogStash::Config'
46
43
  def self.included(base)
47
44
  # Add the DSL methods to the 'base' given.
48
45
  base.extend(LogStash::Config::Mixin::DSL)
49
46
  end
50
-
47
+
51
48
  def config_init(params)
52
49
  # Validation will modify the values inside params if necessary.
53
50
  # For example: converting a string to a number, etc.
@@ -1,11 +1,9 @@
1
1
  # encoding: utf-8
2
- require "logstash/util/loggable"
3
2
  require "logstash/elasticsearch_client"
4
3
  require "logstash/modules/kibana_client"
5
4
  require "logstash/modules/elasticsearch_importer"
6
5
  require "logstash/modules/kibana_importer"
7
6
  require "logstash/modules/settings_merger"
8
- require "logstash/errors"
9
7
 
10
8
  module LogStash module Config
11
9
  class ModulesCommon # extracted here for bwc with 5.x
@@ -1,8 +1,6 @@
1
1
  # encoding: utf-8
2
2
  require "logstash/config/source/base"
3
3
  require "logstash/config/pipeline_config"
4
- require "logstash/util/loggable"
5
- require "logstash/errors"
6
4
  require "uri"
7
5
 
8
6
  module LogStash module Config module Source
@@ -72,7 +70,7 @@ module LogStash module Config module Source
72
70
 
73
71
  config_string = ::File.read(file)
74
72
  config_string.force_encoding("UTF-8")
75
-
73
+
76
74
  if config_string.valid_encoding?
77
75
  part = org.logstash.common.SourceWithMetadata.new("file", file, 0, 0, config_string)
78
76
  config_parts << part
@@ -2,8 +2,6 @@
2
2
  require "logstash/config/source/base"
3
3
  require "logstash/config/modules_common"
4
4
  require "logstash/config/pipeline_config"
5
- require "logstash/util/loggable"
6
- require "logstash/errors"
7
5
 
8
6
  module LogStash module Config module Source
9
7
  class Modules < Base
@@ -1,6 +1,5 @@
1
1
  # encoding: utf-8
2
2
  require "logstash/config/source/local"
3
- require "logstash/util/loggable"
4
3
  require "logstash/pipeline_settings"
5
4
 
6
5
  module LogStash module Config module Source
@@ -2,7 +2,6 @@
2
2
  require "logstash/config/source/local"
3
3
  require "logstash/config/source/modules"
4
4
  require "logstash/config/source/multi_local"
5
- require "logstash/errors"
6
5
  require "thread"
7
6
  require "set"
8
7
 
@@ -53,7 +52,7 @@ module LogStash module Config
53
52
  # This shouldn't happen with the settings object or with any external plugins.
54
53
  # but lets add a guard so we fail fast.
55
54
  @sources_lock.synchronize do
56
- @logger.error "No source loaders matched! This shouldn't happen", :sources => @sources
55
+ logger.error "No source loaders matched! This shouldn't happen", :sources => @sources
57
56
  end
58
57
  raise LogStash::InvalidSourceLoaderSettingError, "Can't find an appropriate config loader with current settings"
59
58
  else
@@ -6,6 +6,8 @@ $DEBUGLIST = (ENV["DEBUG"] || "").split(",")
6
6
  require "clamp"
7
7
  require "rubygems"
8
8
  require "jars/gemspec_artifacts"
9
+ require 'fileutils'
10
+ require 'securerandom'
9
11
 
10
12
  class LogStash::DependencyReport < Clamp::Command
11
13
  option [ "--csv" ], "OUTPUT_PATH", "The path to write the dependency report in csv format.",
@@ -13,19 +15,30 @@ class LogStash::DependencyReport < Clamp::Command
13
15
 
14
16
  def execute
15
17
  require "csv"
16
- CSV.open(output_path, "wb", :headers => [ "name", "version", "url", "license" ], :write_headers => true) do |csv|
18
+
19
+ tmp_dir = java.lang.System.getProperty("java.io.tmpdir")
20
+ ruby_output_path = File.join(tmp_dir, SecureRandom.uuid)
21
+ # Write a CSV with just the ruby stuff
22
+ CSV.open(ruby_output_path, "wb", :headers => [ "name", "version", "url", "license" ], :write_headers => true) do |csv|
17
23
  puts "Finding gem dependencies"
18
24
  gems.each { |d| csv << d }
19
- puts "Finding java/jar dependencies"
25
+ puts "Finding gem embedded java/jar dependencies"
20
26
  jars.each { |d| csv << d }
21
27
  end
28
+ puts "Wrote temporary ruby deps CSV to #{ruby_output_path}"
22
29
 
23
- # Copy in COPYING.csv which is a best-effort, hand-maintained file of dependency license information.
24
- File.open(output_path, "a+") do |file|
25
- extra = File.join(File.dirname(__FILE__), "..", "..", "..", "COPYING.csv")
26
- file.write(IO.read(extra))
30
+ # Use gradle to find the rest and add to the ruby CSV
31
+ puts "Find gradle jar dependencies #{Dir.pwd}"
32
+ command = ["./gradlew", "generateLicenseReport", "-PlicenseReportInputCSV=#{ruby_output_path}", "-PlicenseReportOutputCSV=#{output_path}"]
33
+ puts "Executing #{command}"
34
+ system(*command)
35
+ if $?.exitstatus != 0
36
+ raise "Could not run gradle java deps! Exit status #{$?.exitstatus}"
27
37
  end
38
+
28
39
  nil
40
+ ensure
41
+ FileUtils.rm(ruby_output_path) if ruby_output_path
29
42
  end
30
43
 
31
44
  def gems
@@ -1,6 +1,4 @@
1
1
  # encoding: utf-8
2
- require "logstash/namespace"
3
- require "logstash/logging"
4
2
  require "elasticsearch"
5
3
  require "elasticsearch/transport/transport/http/manticore"
6
4
 
@@ -1,7 +1,5 @@
1
1
  # encoding: utf-8
2
2
  require "logstash-core/logstash-core"
3
- require "logstash/errors"
4
- require "logstash/java_integration"
5
3
  require "logstash/config/cpu_core_strategy"
6
4
  require "logstash/settings"
7
5
  require "logstash/util/cloud_setting_id"
@@ -26,6 +24,8 @@ module LogStash
26
24
  Setting::NullableString.new("config.string", nil, false),
27
25
  Setting::Modules.new("modules.cli", LogStash::Util::ModulesSettingArray, []),
28
26
  Setting::Modules.new("modules", LogStash::Util::ModulesSettingArray, []),
27
+ Setting.new("modules_list", Array, []),
28
+ Setting.new("modules_variable_list", Array, []),
29
29
  Setting::Modules.new("cloud.id", LogStash::Util::CloudSettingId),
30
30
  Setting::Modules.new("cloud.auth",LogStash::Util::CloudSettingAuth),
31
31
  Setting::Boolean.new("modules_setup", false),
@@ -33,6 +33,7 @@ module LogStash
33
33
  Setting::Boolean.new("config.reload.automatic", false),
34
34
  Setting::TimeValue.new("config.reload.interval", "3s"), # in seconds
35
35
  Setting::Boolean.new("config.support_escapes", false),
36
+ Setting::String.new("config.field_reference.parser", "COMPAT", true, %w(STRICT COMPAT LEGACY)),
36
37
  Setting::Boolean.new("metric.collect", true),
37
38
  Setting::String.new("pipeline.id", "main"),
38
39
  Setting::Boolean.new("pipeline.system", false),
@@ -1,15 +1 @@
1
- # encoding: utf-8
2
-
3
- module LogStash
4
- class EnvironmentError < Error; end
5
- class ConfigurationError < Error; end
6
- class PluginLoadingError < Error; end
7
- class ShutdownSignal < StandardError; end
8
- class PluginNoVersionError < Error; end
9
- class BootstrapCheckError < Error; end
10
-
11
- class Bug < Error; end
12
- class ThisMethodWasRemoved < Bug; end
13
- class ConfigLoadingError < Error; end
14
- class InvalidSourceLoaderSettingError < Error; end
15
- end
1
+ # Keeping this file for backwards compatibility with plugins that include it directly.
@@ -1,6 +1,5 @@
1
1
  # encoding: utf-8
2
2
 
3
- require "logstash/namespace"
4
3
  require "logstash/json"
5
4
 
6
5
  # transient pipeline events for normal in-flow signaling as opposed to
@@ -1,40 +1 @@
1
- # encoding: utf-8
2
- module LogStash
3
- class EventDispatcher
4
- java_import "java.util.concurrent.CopyOnWriteArraySet"
5
-
6
- attr_reader :emitter
7
-
8
- def initialize(emitter)
9
- @emitter = emitter
10
- @listeners = CopyOnWriteArraySet.new
11
- end
12
-
13
- # This operation is slow because we use a CopyOnWriteArrayList
14
- # But the majority of the addition will be done at bootstrap time
15
- # So add_listener shouldn't be called often at runtime.
16
- #
17
- # On the other hand the notification could be called really often.
18
- def add_listener(listener)
19
- @listeners.add(listener)
20
- end
21
-
22
- # This operation is slow because we use a `CopyOnWriteArrayList` as the backend, instead of a
23
- # ConcurrentHashMap, but since we are mostly adding stuff and iterating the `CopyOnWriteArrayList`
24
- # should provide a better performance.
25
- #
26
- # See note on add_listener, this method shouldn't be called really often.
27
- def remove_listener(listener)
28
- @listeners.remove(listener)
29
- end
30
-
31
- def fire(method_name, *arguments)
32
- @listeners.each do |listener|
33
- if listener.respond_to?(method_name)
34
- listener.send(method_name, emitter, *arguments)
35
- end
36
- end
37
- end
38
- alias_method :execute, :fire
39
- end
40
- end
1
+ # Keeping this file for backwards compatibility with plugins that include it directly.
@@ -1,19 +1,2 @@
1
- # encoding: utf-8
2
- require "logstash/util/dead_letter_queue_manager"
3
- module LogStash
4
- class ExecutionContext
5
- attr_reader :pipeline, :agent, :dlq_writer
6
-
7
- def initialize(pipeline, agent, plugin_id, plugin_type, dlq_writer)
8
- @pipeline = pipeline
9
- @agent = agent
10
- @plugin_id = plugin_id
11
- @plugin_type = plugin_type
12
- @dlq_writer = LogStash::Util::PluginDeadLetterQueueWriter.new(dlq_writer, @plugin_id, @plugin_type)
13
- end
14
-
15
- def pipeline_id
16
- @pipeline.pipeline_id
17
- end
18
- end
19
- end
1
+ # The contents of this file have been ported to Java. It is included for for compatibility
2
+ # with plugins that directly include it.