写点什么

Grafana 和 ES 打造的 Nginx 的仪表盘

用户头像
陈磊@Criss
关注
发布于: 2020 年 08 月 12 日



grafana 是一款采用 go 语言编写的开源应用,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数据库,官网(http://docs.grafana.org/).





我们想要打造一套监控平台,因此我在逐渐的完善我的DashBoard系列文章。如果你也对这部分感兴趣那么欢迎来和我一起构建这个仪表盘。

监控指标

针对入口Nginx,我设计了如下的监控指标:



  • 最近的24小时内访问量Top10的国家

  • 最近24小时最受欢迎的页面

  • 200状态码和404状态码的比例

  • 最受欢迎的世界题图展示

  • 等等



[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3vIRXmEl-1589266045508)(https://user-images.githubusercontent.com/567298/80523974-32925180-898f-11ea-96b6-e8e559655745.png)]



构建你的DashBoard



再开始构建前,我需要先介绍一下都用到了什么基础软件,Nginx,Redis,Logstash,Elasticsearch,Grafana,Pormetheus。



那么,要构建这个DashBoard,我们首先要把Elasticsearch作为数据源配置到Grafana中。打开如下地址,然后输入Grafana的管理员用户名和密码进配置。



http://grafana服务ip:3000



进入配置页面,在左侧选择数据源,选择添加数据源,选择Elasticsearch后,完成配置。





配置完成数据后,我们就要选择dashboard的模板了。我们进入dashboard的配置,我们使用 https://grafana.com/grafana/dashboards/11190,模板。接下啦,我们需要输入dashboard的名字,选择Elasticsearch和Prometheus的数据源就可以看到你的监控数据了。



看看我们的DashBoard







你需要知道的内容



上面看完了,那么下面我介绍一下我系统中用到的这些软件的链接关系。





  • Nginx 会将我们定义的logformat写入/var/log/nginx/accessjson.log文件,Filebeat会将其作为输入项。

  • Filebeat会将数据输出到Redis

  • Logstash作为Redis数据的过滤将数据存储Elasticsearch

  • Grafana读取Elasticsearch数据源



发布于: 2020 年 08 月 12 日阅读数: 127
用户头像

陈磊@Criss

关注

测者观天下bugs 2018.03.11 加入

华为云MVP,阿里云MVP

评论

发布
暂无评论
Grafana和ES打造的Nginx的仪表盘