Графана использует вычитание двух полей в источнике данных Elasticsearch - PullRequest
0 голосов
/ 06 марта 2020
  1. У меня есть два поля, которые называются «status_codes» и запросы
  2. Я хочу получить количество неудачных запросов.
  3. Мое уравнение: [запросы - нет запросов об успешном выполнении]
  4. В скрипте я написал что-то вроде этого _value - doc ['@ status_codes.200']. Value

НО значение, возвращаемое на графике, равно 'N / A'

Я используюasticsearch (7.6.0) и Grafana (6.6.2).

Ниже приведен файл, который я отправляю наasticsearch

{   "latencies":{
      "total":3981710268690,
      "mean":43876078,
      "50th":916913,
      "90th":2217744,
      "95th":5162430,
      "99th":60233348,
      "max":60000209373,
      "min":43652

},
   "@version":"1",
   "latest":"2020-03-05T16:14:44.23387091Z",
   "path":"test23.json",
   "duration":61163899322,
   "wait":552109,
   "status_codes":{
      "0":90624,
      "200":125

},
   "earliest":"2020-03-05T16:13:43.069971588Z",
   "rate":1483.702004057131,
   "throughput":2.0436707446156577,
   "@timestamp":"2020-03-05T16:14:44.453Z",
   "errors":[
      "Post http://www: dial tcp 0.0.0.0:0->10.133.9.87:8688: socket: too many open files",
      "Post http://www: dial tcp: lookup internal-netty-load-balancer-937469711.us-east-1.elb.amazonaws.com on 10.20.30.30: dial udp 10.20.30:45: socket: too many open files"

],
   "bytes_in":{
      "mean":70.90298515686123,
      "total":6434375

},
   "requests":90749,
   "Report_Title":"test23",
   "host":"ABS",
   "success":0.0013774256465635985,
   "end":"2020-03-05T16:14:44.234423019Z",
   "bytes_out":{
      "mean":70.90298515686123,
      "total":6434375

}
}

Также Я использовал плагин Singlestat как @ ya sh, упомянутый, но все же я мог решить проблему. Секция запросов

Секция визуализации

Может ли кто-нибудь помочь мне

Ответы [ 2 ]

0 голосов
/ 11 марта 2020

Наконец я нашел решение следующим образом:

решение

Спасибо всем.

0 голосов
/ 08 марта 2020

Это довольно простая задача. Для этого вам просто нужно использовать плагин 'Singlestat Math' или 'Metaqueries'. Что вам нужно сделать, так это использовать счетчик metri c в двух запросах на одной панели: один для получения количества успешных кодов состояния, а другой - для неудачных кодов состояния. Затем вы можете использовать любой из плагинов, чтобы вычесть значение результата запроса одного запроса из другого.

https://grafana.com/grafana/plugins/blackmirror1-singlestat-math-panel https://grafana.com/grafana/plugins/goshposh-metaqueries-datasource

Я предлагаю вам go с математическим плагином singlestat, с которым было бы легче работать, исходя из моего опыта. Примечание. Вычисление (AB) выполняется в разделе визуализации, а не в разделе запросов в математическом плагине singlestat.

PS Плагин singlestat-math фактически добавляет новую панель в раздел визуализации. Это панель, отличная от панели по умолчанию для одного элемента.

...