Spring Cloud应用指标监控:Prometheus + Grafana

本文示例代码已上传至github:
https://github.com/ZhaiBo/microservice-scaffold

本文参考资料:
Prometheus文档
Grafana文档

Docker方式安装Prometheus + Grafana
克隆

使用github上开源项目快速搭建Prometheus + Grafana环境。
git clone https://github.com/vegasbrianc/prometheus.git

修改配置

修改下图配置文件内容,在scrape_configs属性下添加一个job,去抓取SpringBoot的metrics数据。
在这里插入图片描述

  - job_name: 'user-svc'

    # Override the global default and scrape targets from this job every 5 seconds.
    scrape_interval: 5s
    metrics_path: '/actuator/prometheus'

    static_configs:
         - targets: ['host.docker.internal:8087'] # 这里修改为需要抓取数据的应用端口
           labels:
             application: 'user-svc'
启动

直接后台启动。

docker-compose up -d
验证

访问Prometheus控制台:http://localhost:9090/targets
此时,由于SpringBoot应用还未配置启动,可以看到上面配置的job是DOWN状态。
在这里插入图片描述

SpringBoot应用集成Prometheus
引入以下maven包
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
	<groupId>io.micrometer</groupId>
	<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
修改application.yml

添加以下配置:

management:
  endpoints:
    promethus:
      enable: true
    web:
      exposure:
        include: '*'
启动验证

启动SpringBoot应用,访问:http://localhost:8087/actuator/prometheus
看到返回下面信息,就说明配置已经生效了。
在这里插入图片描述
再去Prometheus控制台查看,可以看到我们配置的Job状态已经是UP状态:
在这里插入图片描述

Grafana配置数据源

访问Grafana控制台:
地址:localhost:3000,用户名/密码:admin/foobar。用户名密码可去/grafana/config.monitoring下修改。登录成功后配置Prometheus的数据源:
在这里插入图片描述

Grafana导入Dashborad

Grafana官网提供现成的Jvm Dashborad,可去此链接查看:https://grafana.com/grafana/dashboards/4701在这里插入图片描述
将复制到的Id填入:
在这里插入图片描述
选择prometheus数据源:
在这里插入图片描述
完成后可以看到jvm相关的dashborad了:
在这里插入图片描述

总结

Prometheus支持自定义metrics。
Grafana还提供了AlertManager、自定义Dashboard等很丰富的功能,需要使用可去官方文档了解。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值