SpringCloud使用Prometheus和Grafana进行应用监控

作者Gitee地址 https://gitee.com/thciweicloud
作者项目 面包博客,一个微服务架构的前后端分离博客系统。

面包博客 一直想拥有一套自己的监控装置,并且能够自定义面板,足够直观展示运行情况统计数据

监控状态

在SpringCloud Greenwich版开始推荐使用 micrometer 进行应用监控,之后推出了actuator进行统一的整合,当然从它的子依赖中可以看出micrometer的端倪,那么我们如何在微服务中进行应用的监控呢?

在SpringCloud Gateway中引入依赖

<!--actuator 监控-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

配置yaml,使端口暴露出来

management:
  endpoints:
    web:
      exposure:
        include: '*'

直接启动服务即可

Prometheus

使用 actuator 获取这些端口,但数据是庞大复杂的,这不利于我们进行分析,我们可以通过 Prometheus 来将数据转为 JSON 格式,在控制面板通过图标进行监控和展示

这里有两种方法安装,下载官方tar包或者使用docker安装

docker run -d -it -p 9090:9090 --name prometheus bitnami/prometheus:latest
#root权限进入容器内部
docker exec -u 0 -it 容器名 /bin/bash
#修改配置
vi /conf/prometheus.yml

这里注意一个问题,docker内部没有vim,需要更新apt安装,但是国外源很慢,如果换源的话,最后完成安装要再换回官方源(因为安全协议)

mv /etc/apt/sources.list /etc/apt/sources.list.bak

cat <<EOF >/etc/apt/sources.list
deb http://mirrors.ustc.edu.cn/debian stable main contrib non-free
deb http://mirrors.ustc.edu.cn/debian stable-updates main contrib non-free
EOF

apt update

apt install vim

mv /etc/apt/sources.list.bak /etc/apt/sources.list

配置yaml

metrics_path: '/actuator/prometheus' #监控地址
scrape_interval: 5s                 #间隔时间

static_configs:me
- targets: ['服务器ip:88'] #应用服务地址 如果使用localhost 需要替换为电脑ip

重启Prometheus

对于服务端,引入依赖

<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

配置yaml

management:
  endpoints:
    web:
      exposure:
        include: '*'
  endpoint:
    prometheus:
      enabled: true
    metrics:
      enabled: true
  metrics:
    export:
      prometheus:
        enabled: true

重启服务端,访问 Prometheus部署服务器ip:9090,仅仅进入是不够的,请检查状态status和语句是否可用

这里说一下如果使用 tar 包安装,还是修改yml文件,最后启动Prometheus

./prometheus --config.file=prometheus.yml

Grafana

使用Prometheus仍然不完美,我们还需要一个dashboard进行整体的展示和管理,Grafana帮助我们解决了这个问题

在以下地址下载 rpm包 直接在服务器安装 Grafana 启动grafana

https://grafana.com/grafana/download

systemctl  start  grafana-server

访问 服务器ip:3000,在dashboard跟随流程

添加你需要的panel,在metrics brower选择语句

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值