【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示

0、前置信息

0.1、版本信息

grafana版本:v8.1.2
ElasticSearch数据源版本:7.6.2
ElasticSearch7.6.2版本对应的Lucene版本:8.4.0

0.2、官网地址

grafana官网地址:Grafana documentation | Grafana documentation
grafana模板地址:Dashboards | Grafana Labs
Lucene查询官方文档:
https://lucene.apache.org/core/8_11_1/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description

0.3、ElasticSearch索引字段信息

{
  "mappings": {
    "_doc": {
      "properties": {
        "appId": {
          "type": "keyword"
        },
        "appName": {
          "type": "text",
          "analyzer": "ik_max_word"
        },
        "executeTime": {
          "type": "long"
        },
        "httpCode": {
          "type": "integer"
        },
        "message": {
          "type": "text",
          "analyzer": "ik_max_word"
        },
        "requestIp": {
          "type": "keyword"
        },
        "requestMethod": {
          "type": "keyword"
        },
        "requestParams": {
          "type": "keyword"
        },
        "requestPath": {
          "type": "keyword"
        },
        "requestReferer": {
          "type": "keyword"
        },
        "requestTime": {
          "type": "date",
          "format": "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
        },
        "requestUrl": {
          "type": "keyword"
        },
        "responseTime": {
          "type": "date",
          "format": "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
        },
        "scheme": {
          "type": "keyword"
        },
        "statusCode": {
          "type": "integer"
        },
        "successFlag": {
          "type": "boolean"
        },
        "targetAppId": {
          "type": "keyword"
        },
        "targetAppName": {
          "type": "text",
          "analyzer": "ik_max_word"
        },
        "targetServer": {
          "type": "keyword"
        },
        "tid": {
          "type": "keyword"
        }
      }
    }
  }
}
索引字段信息

1、Grafana添加ElasticSearch数据源

此处可以参考官网文档添加数据源(如图所示),当然也可参考下面操作:grafana官网文档地址:Elasticsearch | Grafana documentation

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第1张图片

在Grafana的Setting中点击DataSources,参照下图配置数据源信息

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第2张图片

说明:

1> 上图中index name为单一索引,按天生成,例如:索引名为:es-gateway-log-2022-03-15,所以配置时,index name配置为 [es-gateway-log-]YYYY.MM.DD,Pattern选择的值为Daily,若索引为按月生成,则index name配置为 [es-gateway-log-]YYYY.MM,Pattern选择的值为Monthly

2> ElasticSearch版本的选择要与连接的ElasticSearch版本一致

2、Grafana中添加Panel进行数据展示

2.1、单一字段统计数据量

例如:查询过去一定时间段内,请求的总访问量

展示效果如下图:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第3张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第4张图片

2> 绘制Panel展示数据

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第5张图片

说明:

1> Panel面板数据展示方式,可以参看官方介绍 Visualizations | Grafana documentation

2> 关于展示数据的字体大小、颜色均可以通过改变对应的属性值修改

3> 对于字段名的修改,可以参考下图

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第6张图片

2.2、根据单一字段查看数据走势

例如:查询过去一定时间段内,请求的访问量

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第7张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第8张图片

2> 绘制Panel展示数据

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第9张图片

2.3、根据多个字段查看数据走势

例如:查询一定时间段内,各应用的访问流量

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第10张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第11张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第12张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第13张图片

说明:

如果需要调整各个应用走势曲线的颜色,可以在展示效果页面上,点击要修改的应用对应的颜色,选择对应颜色即可,可参考下图:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第14张图片

2.4、根据某一字段分组汇总展示

例如:根据应用ID分组展示选定时间段内的请求数据

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第15张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第16张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第17张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第18张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第19张图片

2.5、根据不同条件同时展示多个柱状图

例如:展示在所选时间段内访问的总请求数,访问成功的请求数,访问失败的请求数(这里的判断条件根据字段 successFlag)

展示效果如下:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第20张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第21张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第22张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第23张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第24张图片

2.6、根据某一字段展示平均数据

例如:展示所选时间段内服务的平均执行时间

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第25张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第26张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第27张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第28张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第29张图片

2.7、列表展示ElasticSearch原生数据

例如:展示kibana中当前索引数据,这里以两种方式展示:

方式1:展示ElasticSearch原始数据

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第30张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第31张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第32张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第33张图片

方式2:可选择字段展示ElasticSearch原生数据

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第34张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第35张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第36张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第37张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第38张图片

2.8、多条件查询其中某一字段不为空

例如:分组展示服务执行时间大于2秒的请求数据

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第39张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第40张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第41张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第42张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第43张图片

说明:

当前ElasticSearch7.6.2版本对应的Lucene版本为8.4.0,关于Lucene的查询语法,可参见官方文档:

https://lucene.apache.org/core/8_11_1/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description

2.9、查询字段为空的数据

例如:由于在ElasticSearch存储的数据包含有appId为空的数据,所以需要将这部分数据查询出来,同时因为这部分数据的appId和appName值为空,所以查询出来的数据不会包含这些字段值。

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第44张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第45张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第46张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第47张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第48张图片

2.10、计算成功率、失败率

例如:计算在一定时间段内,服务处理请求的成功率和失败率(这里以successFlag字段作为筛选条件)

展示效果如下所示:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第49张图片

操作步骤如下:

1> 添加一个空白的Panel

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第50张图片

2> 绘制Panel展示数据

展示样式选择:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第51张图片

展示数据配置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第52张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第53张图片

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第54张图片

数据百分号展示设置:

【大数据】Grafana整合ElasticSearch数据源绘制Dashboard展示_第55张图片

你可能感兴趣的:(大数据,grafana,elasticsearch)