mirror of
https://github.com/elastic/logstash.git
synced 2025-04-24 22:57:16 -04:00
Adding the values for the automatic reloading to the API
``` config_reload_automatic: true, config_reload_interval: 3 ``` Fixes: #5681 Fixes #5780
This commit is contained in:
parent
2abbe64e99
commit
7312a12f36
4 changed files with 20 additions and 6 deletions
|
@ -20,7 +20,7 @@ module LogStash
|
||||||
def pipeline
|
def pipeline
|
||||||
extract_metrics(
|
extract_metrics(
|
||||||
[:stats, :pipelines, :main, :config],
|
[:stats, :pipelines, :main, :config],
|
||||||
:workers, :batch_size, :batch_delay
|
:workers, :batch_size, :batch_delay, :config_reload_automatic, :config_reload_interval
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ module LogStash
|
||||||
:vm_name => java.lang.System.getProperty("java.vm.name"),
|
:vm_name => java.lang.System.getProperty("java.vm.name"),
|
||||||
:vm_version => java.lang.System.getProperty("java.version"),
|
:vm_version => java.lang.System.getProperty("java.version"),
|
||||||
:vm_vendor => java.lang.System.getProperty("java.vendor"),
|
:vm_vendor => java.lang.System.getProperty("java.vendor"),
|
||||||
:vm_name => java.lang.System.getProperty("java.vm.name"),
|
:vm_name => java.lang.System.getProperty("java.vm.name"),
|
||||||
:start_time_in_millis => started_at,
|
:start_time_in_millis => started_at,
|
||||||
:mem => {
|
:mem => {
|
||||||
:heap_init_in_bytes => (memory_bean.getHeapMemoryUsage().getInit() < 0 ? 0 : memory_bean.getHeapMemoryUsage().getInit()),
|
:heap_init_in_bytes => (memory_bean.getHeapMemoryUsage().getInit() < 0 ? 0 : memory_bean.getHeapMemoryUsage().getInit()),
|
||||||
|
|
|
@ -95,7 +95,7 @@ module LogStash; class Pipeline
|
||||||
queue = LogStash::Util::WrappedSynchronousQueue.new
|
queue = LogStash::Util::WrappedSynchronousQueue.new
|
||||||
@input_queue_client = queue.write_client
|
@input_queue_client = queue.write_client
|
||||||
@filter_queue_client = queue.read_client
|
@filter_queue_client = queue.read_client
|
||||||
# Note that @infilght_batches as a central mechanism for tracking inflight
|
# Note that @inflight_batches as a central mechanism for tracking inflight
|
||||||
# batches will fail if we have multiple read clients here.
|
# batches will fail if we have multiple read clients here.
|
||||||
@filter_queue_client.set_events_metric(metric.namespace([:stats, :events]))
|
@filter_queue_client.set_events_metric(metric.namespace([:stats, :events]))
|
||||||
@filter_queue_client.set_pipeline_metric(
|
@filter_queue_client.set_pipeline_metric(
|
||||||
|
@ -206,6 +206,8 @@ module LogStash; class Pipeline
|
||||||
config_metric.gauge(:workers, pipeline_workers)
|
config_metric.gauge(:workers, pipeline_workers)
|
||||||
config_metric.gauge(:batch_size, batch_size)
|
config_metric.gauge(:batch_size, batch_size)
|
||||||
config_metric.gauge(:batch_delay, batch_delay)
|
config_metric.gauge(:batch_delay, batch_delay)
|
||||||
|
config_metric.gauge(:config_reload_automatic, @settings.get("config.reload.automatic"))
|
||||||
|
config_metric.gauge(:config_reload_interval, @settings.get("config.reload.interval"))
|
||||||
|
|
||||||
@logger.info("Starting pipeline",
|
@logger.info("Starting pipeline",
|
||||||
"id" => self.pipeline_id,
|
"id" => self.pipeline_id,
|
||||||
|
|
|
@ -111,7 +111,9 @@ describe LogStash::Api::Modules::Node do
|
||||||
"pipeline" => {
|
"pipeline" => {
|
||||||
"workers" => Numeric,
|
"workers" => Numeric,
|
||||||
"batch_size" => Numeric,
|
"batch_size" => Numeric,
|
||||||
"batch_delay" => Numeric
|
"batch_delay" => Numeric,
|
||||||
|
"config_reload_automatic" => Boolean,
|
||||||
|
"config_reload_interval" => Numeric
|
||||||
},
|
},
|
||||||
"os" => {
|
"os" => {
|
||||||
"name" => String,
|
"name" => String,
|
||||||
|
@ -140,8 +142,8 @@ describe LogStash::Api::Modules::Node do
|
||||||
"threads" => Array
|
"threads" => Array
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
test_api_and_resources(root_structure, :exclude_from_root => ["hot_threads"])
|
test_api_and_resources(root_structure, :exclude_from_root => ["hot_threads"])
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,3 +1,13 @@
|
||||||
|
# Ruby doesn't have common class for boolean,
|
||||||
|
# And to simplify the ResourceDSLMethods check it make sense to have it.
|
||||||
|
module Boolean; end
|
||||||
|
class TrueClass
|
||||||
|
include Boolean
|
||||||
|
end
|
||||||
|
class FalseClass
|
||||||
|
include Boolean
|
||||||
|
end
|
||||||
|
|
||||||
module ResourceDSLMethods
|
module ResourceDSLMethods
|
||||||
# Convert a nested hash to a mapping of key paths to expected classes
|
# Convert a nested hash to a mapping of key paths to expected classes
|
||||||
def hash_to_mapping(h, path=[], mapping={})
|
def hash_to_mapping(h, path=[], mapping={})
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue