当前位置 : 首页 » 文章分类 :  开发  »  Grafana

Grafana

Grafana 是一个开源的跨平台度量分析和可视化和告警工具。


docker安装grafana

Installing Grafana
https://grafana.com/docs/grafana/latest/installation/

Installing using Docker
https://grafana.com/docs/grafana/latest/installation/docker/

第一次执行时直接从 dockerhub 拉取最新版本 grafana

docker run -d --rm \
--network host \
--name grafana \
-e "GF_SERVER_HTTP_PORT=3001" \
grafana/grafana

解释下:
-d 后台运行
--rm 停止容器后删掉容器文件
-e "GF_SERVER_HTTP_PORT=3001" 通过环境变量修改端口为 3001
--network host 与宿主机完全共享网络,默认是bridge桥接,无法在nginx中通过localhost转发请求
--name grafana 指定启动的容器名,方便按名称stop等操作

安装完成后本地浏览器访问 http://localhost:3001/ 能打开 grafana 登录界面说明安装没问题。
初始账号/密码为: admin / admin

我在 vps 装了一个,又用 nginx 做了域名转发,可直接通过下面链接访问我的 grafana 试用
http://grafana.masikkk.com/


grafana添加prometheus数据源

进去后点击 Add data source
选择 Prometheus
URL 填入 prometheus 地址,本地安装的 Prometheus 默认地址为 http://localhost:9090 ,我配置了域名和 nginx 转发,地址是 http://prometheus.masikkk.com/


Grafana添加Prometheus数据源

导入通用dashboard

grafana 官方有很多配置好的通用 dashboard
https://grafana.com/grafana/dashboards
在左侧 Filter by 根据 Data Source 进行过滤,选出 Prometheus 数据源的 dashboard
每个发布的 dashboard 都有个 id, 在自己的 grafana 中直接用 id 就可以 import
比如导入 id 为 4701 的 JVM (Micrometer) dashboard
https://grafana.com/grafana/dashboards/4701

导入时设置已添加的 Prometheus 数据源, 导入后如下图


jvm dashboard

自己配置dashboard

除了通用监控指标的 dashboard, 还可以给自定义上报的监控指标配置 dashboard
grafana 中点左侧的 加号 create dashboard, 新建一个 dashboard, 点右上角的齿轮进入此 dashboard 的配置

先编辑下 dashboard 的变量,添加一个 application 变量,query 里填入 grafana的 label_values(application) 函数,列出所有指标中 label 名为 application 的所有值供列表选择, application label 是在 spring boot 里配置的 actuator 选项,给所有指标添加应用名 label 供筛选。
query 里填入查询语句后,如果下面马上给列出 preview of values 候选值,就说明 query 语句没问题,如下图:


dashboard 变量配置

我配了我博客几个接口的qps和时间监控,如下


博客主要服务监控dashboard

PromQL 如下

# 访问量上报 QPS
irate(http_server_requests_seconds_count{application="statistic",exception="None",method="POST",uri="/statistic"}[1m])
# 查询评论 QPS
irate(http_server_requests_seconds_count{application="disqus",exception="None",method="GET",uri="/comments"}[1m])
# 访问量上报 响应时间
irate(http_server_requests_seconds_sum{application="statistic",exception="None",method="POST",uri="/statistic"}[1m])
# 查询评论 响应时间
irate(http_server_requests_seconds_sum{application="disqus",exception="None",method="GET",uri="/comments"}[1m])

Spring Boot 2.x监控数据可视化(Actuator + Prometheus + Grafana手把手)
http://www.itmuch.com/spring-boot/actuator-prometheus-grafana/


Grafana变量函数

label_values(label)
返回Promthues所有监控指标中,标签名为 label 的所有可选值

label_values(metric, label)
返回Promthues所有监控指标metric中,标签名为label的所有可选值

https://yunlzheng.gitbook.io/prometheus-book/part-ii-prometheus-jin-jie/grafana/templating#shi-yong-bian-liang-guo-lv-shi-jian-xu-lie


上一篇 LeetCode.101.Symmetric Tree 对称二叉树

下一篇 LeetCode.053.Maximum Subarray 最大连续子序列和

阅读
评论
777
阅读预计3分钟
创建日期 2020-01-17
修改日期 2020-02-26
类别

页面信息

location:
protocol:
host:
hostname:
origin:
pathname:
href:
document:
referrer:
navigator:
platform:
userAgent:

评论