Uploaded image for project: 'ZABBIX BUGS AND ISSUES'
  1. ZABBIX BUGS AND ISSUES
  2. ZBX-18809

Elasticsearch template: invalid formula for latency

    XMLWordPrintable

Details

    • Team INT
    • Sprint 74 (Mar 2021)
    • 1

    Description

      Here you give Elasticsearch template: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/elasticsearch_http/template_app_elasticsearch_http.yaml

      Look at formula for key `es.node.indices.flush.latency{#ES.NODE}`:

       

      last(es.node.indices.flush.total_time_in_millis[{#ES.NODE}]) / ( last(es.node.indices.flush.total[{#ES.NODE}]) + (last(es.node.indices.flush.total[{#ES.NODE}]) = 0) ) 

       

       

      More accurate formula should be:

       
      (not (change(es.node.indices.flush.total_time_in_millis[{#ES.NODE}]) < 0)) * ( change(es.node.indices.flush.total_time_in_millis{#ES.NODE}) / ( change(es.node.indices.flush.total[{#ES.NODE}]) + (last(es.node.indices.flush.total{#ES.NODE}) = 0) ) ) 

      You divide total time spent for operation from server start on total count of operation from server start. So if our server for several days made operation in 100ms, but now it become slow and is making operations in 1000ms - we will see that only after long period of time, when we make lot of slow operations.

      The accurate formula should be (if simplified): `change(total_time_in_millis) / change(total)`. We should look on latency just for new operations, not all history.

      Attachments

        Activity

          People

            abakaldin Alexander Bakaldin
            drewblin Andrey
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: