Class: LogStash::Api::Commands::Node
- Inherits:
-
Base
- Object
- Base
- LogStash::Api::Commands::Node
show all
- Defined in:
- lib/logstash/api/commands/node.rb
Instance Attribute Summary
Attributes inherited from Base
#service
Instance Method Summary
collapse
Methods inherited from Base
#extract_metrics, #initialize, #started_at, #uptime
Instance Method Details
#all(selected_fields = []) ⇒ Object
10
11
12
13
14
15
16
17
18
|
# File 'lib/logstash/api/commands/node.rb', line 10
def all(selected_fields=[])
payload = {
:pipelines => pipelines,
:os => os,
:jvm => jvm
}
payload.select! { |k,v| selected_fields.include?(k) } unless selected_fields.empty?
payload
end
|
#hot_threads(options = {}) ⇒ Object
65
66
67
|
# File 'lib/logstash/api/commands/node.rb', line 65
def hot_threads(options={})
HotThreadsReport.new(self, options)
end
|
#jvm ⇒ Object
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/logstash/api/commands/node.rb', line 45
def jvm
memory_bean = ManagementFactory.getMemoryMXBean()
{
:pid => ManagementFactory.getRuntimeMXBean().getName().split("@").first.to_i,
:version => java.lang.System.getProperty("java.version"),
:vm_version => java.lang.System.getProperty("java.version"),
:vm_vendor => java.lang.System.getProperty("java.vendor"),
:vm_name => java.lang.System.getProperty("java.vm.name"),
:start_time_in_millis => started_at,
:mem => {
:heap_init_in_bytes => (memory_bean.getHeapMemoryUsage().getInit() < 0 ? 0 : memory_bean.getHeapMemoryUsage().getInit()),
:heap_max_in_bytes => (memory_bean.getHeapMemoryUsage().getMax() < 0 ? 0 : memory_bean.getHeapMemoryUsage().getMax()),
:non_heap_init_in_bytes => (memory_bean.getNonHeapMemoryUsage().getInit() < 0 ? 0 : memory_bean.getNonHeapMemoryUsage().getInit()),
:non_heap_max_in_bytes => (memory_bean.getNonHeapMemoryUsage().getMax() < 0 ? 0 : memory_bean.getNonHeapMemoryUsage().getMax())
},
:gc_collectors => ManagementFactory.getGarbageCollectorMXBeans().collect(&:getName)
}
end
|
#os ⇒ Object
36
37
38
39
40
41
42
43
|
# File 'lib/logstash/api/commands/node.rb', line 36
def os
{
:name => java.lang.System.getProperty("os.name"),
:arch => java.lang.System.getProperty("os.arch"),
:version => java.lang.System.getProperty("os.version"),
:available_processors => java.lang.Runtime.getRuntime().availableProcessors()
}
end
|
#pipeline(pipeline_id) ⇒ Object
27
28
29
30
31
32
33
34
|
# File 'lib/logstash/api/commands/node.rb', line 27
def pipeline(pipeline_id)
(
[:stats, :pipelines, pipeline_id.to_sym, :config],
:workers, :batch_size, :batch_delay, :config_reload_automatic, :config_reload_interval, :dead_letter_queue_enabled, :dead_letter_queue_path
).reject{|_, v|v.nil?}
rescue
{}
end
|
#pipelines ⇒ Object
20
21
22
23
24
25
|
# File 'lib/logstash/api/commands/node.rb', line 20
def pipelines
pipeline_ids = service.get_shallow(:stats, :pipelines).keys
pipeline_ids.each_with_object({}) do |pipeline_id, result|
result[pipeline_id] = pipeline(pipeline_id)
end
end
|