New metric since logstash 8.13: worker_utilization
Closed this issue · 6 comments
Feature Description
There is a new metric on pipeline level since 8.13: https://www.elastic.co/guide/en/logstash/current/logstash-8-13-0.html#notable-8.13.0
Please collect and include it.
_node/stats sample (logstash 8.15.0)
"main": {
"events": {
"duration_in_millis": 1544425,
"filtered": 4510626,
"out": 4510626,
"in": 4510877,
"queue_push_duration_in_millis": 1269044
},
"flow": {
"input_throughput": {
"current": 1765,
"last_1_minute": 2083,
"last_5_minutes": 2111,
"last_15_minutes": 1754,
"lifetime": 1487
},
"worker_concurrency": {
"current": 0.5364,
"last_1_minute": 0.6848,
"last_5_minutes": 0.6716,
"last_15_minutes": 0.5716,
"lifetime": 0.5093
},
"filter_throughput": {
"current": 1765,
"last_1_minute": 2079,
"last_5_minutes": 2111,
"last_15_minutes": 1754,
"lifetime": 1487
},
"output_throughput": {
"current": 1765,
"last_1_minute": 2079,
"last_5_minutes": 2111,
"last_15_minutes": 1754,
"lifetime": 1487
},
"worker_utilization": {
"current": 53.64,
"last_1_minute": 68.48,
"last_5_minutes": 67.16,
"last_15_minutes": 57.16,
"lifetime": 50.93
},
"queue_backpressure": {
"current": 0.4336,
"last_1_minute": 0.5846,
"last_5_minutes": 0.5729,
"last_15_minutes": 0.4807,
"lifetime": 0.4185
}
},
Version of logstash-exporter this feature request applies to
None
Motivation and Goals
This is a useful metric to determine how saturated logstash is since it uses the pipeline-level configured worker count, 100% means its saturated, no matter how many workers are currently configured.
Alternatives Considered
Using a different way to collect logstash metrics - not a good option.
Additional Context
There doesn't seem to be another way to get at this number - because the amount of workers is a per-pipeline attribute, which doesn't seem to be exposed by logstash.
logstash_info_pipeline_workers
only collects the default number.
@VCCPlindsten are you using v1, or v2?
I create a PR for v1: #369
but v2 is in rather unstable state on the branches that i am working on RN and i wonder whether i have to rebase them, or just fix that later on
also, i forgot to ask. could you do the review on the PR i just posted?if it is allright i can merge it soon and create a PR
Looking a little bit closer at the _node api, it seems per-pipeline workers is exposed, under the "pipelines" key. Not sure if that is a new thing as well - I've not noticed it before.
Reviewing shortly.
i am currently working and should not be doing this task, but it seems like a small one :D
the PR was created really quick, so there may be these mistakes in it
Are you using v1 version of the exporter? I will replicate the PR to v2 later on
I am using v1, yes - since v2 is not stable yet.
Working in release 1.8.2