Provide status information via /_status

Description

Logstash should expose some status information via JSON/HTTP. The main usecase here would be to monitor the Indexer-JVM without the JMX hassle.

In addition to JVM metrics, it would be nice to have at least op-counters like events-in, events-out, so a hunk indexer could be detected.

Here is a example to illustrate what I mean.

{
"metrics": {},
"labels": {
"Version": "0.1.0-SNAPSHOT",
"Git commit hash": "a941278fe6b94ada57fb4321e84c1acbacfc91f1",
"Project name": "logstash"
},
"gauges": {
"jvm_uptime": 138315162,
"jvm_thread_peak_count": 38,
"jvm_thread_daemon_count": 16,
"jvm_nonheap_used": 62349832,
"jvm_nonheap_max": 184549376,
"jvm_nonheap_committed": 100392960,
"jvm_heap_used": 22584216,
"jvm_heap_max": 502857728,
"jvm_heap_committed": 111824896,
"jvm_fd_limit": 8192,
"jvm_fd_count": 90,
"jvm_num_cpus": 4,
"jvm_post_gc_CMS_Old_Gen_used": 7151160,
"jvm_post_gc_CMS_Perm_Gen_used": 56640528,
"jvm_post_gc_Par_Eden_Space_used": 0,
"jvm_post_gc_Par_Survivor_Space_used": 524288,
"jvm_post_gc_used": 64315976,
"jvm_start_time": 1363207360377,
"jvm_thread_count": 33
},
"counters": {
"jvm_gc_msec": 37878,
"jvm_gc_cycles": 13263,
"jvm_gc_ParNew_msec": 37815,
"jvm_gc_ParNew_cycles": 13251,
"jvm_gc_ConcurrentMarkSweep_msec": 63,
"jvm_gc_ConcurrentMarkSweep_cycles": 12
}
}

Environment

None

Status

Assignee

Logstash Developers

Reporter

Jens Braeuer

Labels

Affects versions

ROADMAP

Priority