SpringBoot可视化监控的具体应用
作者:你照亮了我的世界 发布时间:2023-07-28 20:32:02
本文主要介绍了Spring Boot 应用可视化监控,分享给大家,具体如下:
1、Spring Boot 应用暴露监控指标【版本 1.5.7.RELEASE】
首先,添加依赖如下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
/*采集应用的指标信息,我们使用的是prometheus,相应的我们引入包:*/
<dependency>
<groupId>io.prometheus</groupId>
<artifactId>simpleclient_spring_boot</artifactId> <version>0.0.26</version>
</dependency>
然后,在启动类 Application.java
添加如 * 解:
@SpringBootApplication
@EnablePrometheusEndpoint
@EnableSpringBootMetricsCollector
public class Application {
public static void main(String[] args) { SpringApplication.run(Application.class, args);
}
}
最后,配置默认的登录账号和密码,在 application.yml
中:
security:
user:
name:user
password: pwd
启动应用程序后,会看到如下一系列的 Mappings
利用账号密码访问 http://localhost:8080/application/prometheus ,可以看到 Prometheus 格式的指标数据
2、Prometheus 采集 Spring Boot 指标数据
首先,获取 Prometheus 的 Docker 镜像:
$ docker pull prom/prometheus
然后,编写配置文件 prometheus.yml
:
global:
scrape_interval: 10s
scrape_timeout: 10s
evaluation_interval: 10m
scrape_configs:
- job_name: spring-boot
scrape_interval: 5s
scrape_timeout: 5s
metrics_path: /application/prometheus
scheme: http
basic_auth:
username: admin
password: 123456
static_configs:
- targets:
- 192.168.11.54:8099 #此处填写 Spring Boot 应用的 IP + 端口号
接着,启动 Prometheus :
docker run -d --name prometheus -p 9090:9090
-v D:\test\actuator\prometheus\prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus
请注意,
D:\test\actuator\prometheus\prometheus.yml
,是我的配置文件存放地址,我们需要将它放到容器里面去,所以用了-v
来做文件映射。/etc/prometheus/prometheus.yml
这个是容器启动的时候去取的默认配置,这里我是直接覆盖掉了它。prom/prometheus
这是镜像,如果本地没有,就回去你设置好的镜像仓库去取。
启动完成后用**docker ps
**看下是否已经启动成功,之后打开浏览器输入:http://localhost:9090/targets
,检查 Spring Boot 采集状态是否正常,如果看到下图就是成功了。
3、Grafana 可视化监控数据
首先,获取 Grafana 的 Docker 镜像:
$ docker pull grafana/grafana
然后,启动 Grafana:
$ docker run --name grafana -d -p 3000:3000 grafana/grafana
接着,访问 http://localhost:3000/ 配置 Prometheus 数据源:
Grafana 登录账号 admin 密码 admin
先配置数据源.
2.配置单个指标的可视化监控面板:
prometh
采集的数据
来源:https://blog.csdn.net/weixin_44196699/article/details/105010045


猜你喜欢
- 本文实例讲述了C#创建windows系统用户的方法。分享给大家供大家参考。具体如下:下面的代码可以通过c#创建一个windows的本地系统账
- 今天来说一个Java多机部署下定时任务的处理方案。需求: 有两台服务器同时部署了同一套代码, 代码中写有spring自带的定时任务,但是每次
- 导读Spring Boot应用可以使用spring-boot-maven-plugin快速打包,构建一个可执行jar。Spring Boot
- 解析和遍历一个HTML文档如何解析一个HTML文档:String html = "<html><head>
- Java 8新增了LocalDate和LocalTime接口,为什么要搞一套全新的处理日期和时间的API?因为旧的java.util.Dat
- 目录1 创建 xml 动画文件2 加载使用3 聊一聊 AnimationDrawable3.1 使用 ViewTreeObserver3.2
- 相关api见:点击进入/* * Copyright 2014 the original author or authors. * * Lic
- 本文实例为大家分享了Android自定义View画天气预报折线图的具体代码,供大家参考,具体内容如下效果图如下:刚开始尝试用第三方画曲线的框
- 源代码版本 : spring-webmvc-5.1.4.RELEASE概述PathMatcher是Spring的一个概念模型接口,该接口抽象
- 现在很多的网站都提供有用户注册功能, 通常我们注册成功之后就会收到一封来自注册网站的邮件。邮件里面的内容可能包含了我们的注册的用户名和密码以
- 目录一 为什么要用锁二 synchronized怎么实现的三 CAS来者何人四synchronized和CAS孰优孰劣轻量级锁重量级锁总结提
- 这篇文章主要介绍了Springboot整合MybatisPlus的实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定
- 本文实例讲述了Spring实战之协调作用域不同步的Bean操作。分享给大家供大家参考,具体如下:一 配置<?xml version=&
- 前言使用SpringBoot来开发项目相对于传统模式,要快速优雅许多,相信目前国内绝大部分web项目的开发还没有使用SpringBoot来做
- 本文实例讲述了Android编程开发之TextView控件用法。分享给大家供大家参考,具体如下:这里我们会讲讲常用控件的使用。在今后的大多数
- 工作中许多代码中用到枚举(enum),更用到了需要继承的枚举,由于C#的枚举不允许被继承(但允许继承自int/float等类型,这个不是我要
- 关于数据绑定Xamarin 单向、双向绑定Xaml绑定C#代码绑定在此之前,几段 伪代码 帮助像我一样菜的同学入门。。。假如说,有两个控件,
- 1. String对象不可改变的特性下图显示了如下代码运行的过程:String s = "abcd"; s = s.co
- Java的SPI机制实例详解SPI的全名为Service Provider Interface.普通开发人员可能不熟悉,因为这个是针对厂商或
- 本文实例讲述了Java中的匿名对象定义与用法。分享给大家供大家参考,具体如下:一 点睛匿名对象是指没有名字的对象。实际上,对于对象实例化操作