springboot2.X整合prometheus监控的实例讲解

关于“springboot2.X整合prometheus监控的实例讲解”的攻略,我可以给你一个详细的步骤如下:

步骤一:集成Prometheus

  1. pom.xml文件中添加Prometheus依赖:

xml
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
<version>${micrometer.version}</version>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>${micrometer.version}</version>
</dependency>

其中${micrometer.version}是你选择的Micrometer版本。

  1. application.yml中添加以下配置:

yaml
management:
endpoint:
metrics:
enabled: true
endpoints:
web:
exposure:
include: metrics

以上配置将暴露Prometheus监控端点以供Prometheus抓取。

步骤二:打开Prometheus服务器

  1. 下载安装Prometheus服务器。

  2. 打开prometheus.yml并添加以下配置:

yaml
scrape_configs:
- job_name: 'spring-boot-app'
metrics_path: '/actuator/prometheus'
static_configs:
- targets: ['localhost:8080']

以上配置开启了一个名为spring-boot-app的Prometheus作业,该作业会抓取位于localhost:8080的服务/Micrometer端点的执行情况。

在上面这个作业之后,Prometheus可以抓取你的Spring Boot应用程序,并向其发送监控指标请求。

示例一:监控应用程序中的HTTP请求

  1. 编写一个REST控制器,并持续输出日志信息。

```java
@RestController
public class TestController {
private static final Logger log = LoggerFactory.getLogger(TestController.class);

   @GetMapping("/hello")
   public String hello(){
       log.info("访问了hello接口");
       return "hello";
   }

}
```

以上控制器会在每次GET请求时打印“访问了hello接口”的日志信息。

  1. pom.xml文件中加入Spring Boot Actuator包:

xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

这个包为你的应用程序提供了很多环境信息,包括HTTP指标。

  1. application.yml中加入以下配置:

yaml
management:
endpoint:
metrics:
enabled: true
endpoints:
web:
exposure:
include: metrics

以上配置开启了Spring Boot Actuator的度量端点。

  1. 运行程序并访问 http://localhost:8080/actuator/metrics/http.server.requests 来获取你应用程序中HTTP请求的监控数据。

示例二:监控Java虚拟机中的内存使用情况

  1. 添加JVM指标的依赖:

xml
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>${micrometer.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

  1. application.yml中加入以下配置:

yaml
management:
endpoint:
metrics:
enabled: true
endpoints:
web:
exposure:
include: metrics

以上配置开启了Spring Boot Actuator的度量端点。

  1. 在代码中添加以下代码:

java
@Bean
public MeterRegistryCustomizer<MeterRegistry> configurer() {
return (registry) -> registry.config().commonTags("application", "springboot-monitoring-example");
}

这段代码为Micrometer提供了应用程序名称的标签信息。

  1. 在浏览器中输入 http://localhost:8080/actuator/metrics/jvm.memory.used 来获取当前运行的JVM的使用情况。

以上就是“springboot2.X整合prometheus监控的实例讲解”的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:springboot2.X整合prometheus监控的实例讲解 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • JSP、Servlet中get请求和post请求的区别总结

    JSP、Servlet中get请求和post请求的区别总结 在使用JSP和Servlet的过程中,我们经常会使用到HTTP的GET和POST请求方式。这两种方式虽然都是常用的HTTP请求方式,但是在使用上有所区别。 GET请求通常用于获取数据,而POST请求通常用于提交数据。其中GET请求是通过URL传输数据的,而POST请求是通过HTTP的消息主体传输数据…

    Java 2023年6月15日
    00
  • mybatis自动填充时间字段示例代码

    为了实现 mybatis 自动填充时间字段的功能,需要在实体类中加入 createTime 和 updateTime 字段,并使用注解 @TableField(fill = FieldFill.INSERT) 标记 createTime 字段,在新增时自动填入当前时间,使用注解 @TableField(fill = FieldFill.INSERT_UPDA…

    Java 2023年5月20日
    00
  • java命令执行jar包的多种方法(四种方法)

    下面是详细讲解“java命令执行jar包的多种方法(四种方法)”的完整攻略。 一、使用java -jar命令运行jar包 将jar包放到一个单独的目录中,并在命令行中进入该目录。 使用以下命令来运行jar包: java -jar example.jar 其中example.jar是要运行的jar包的名称。 如果需要传递参数,则可以在命令中添加它们,例如: j…

    Java 2023年5月19日
    00
  • 基于JAVA中的四种JSON解析方式详解

    基于Java中的四种JSON解析方式详解 JSON是一种轻量级的数据交换格式,在web开发中被广泛使用,同时Java中也提供了多种JSON解析方式。本篇文章将详细介绍Java中的四种JSON解析方式,并提供示例说明。 四种JSON解析方式 Java中提供的四种JSON解析方式包括: org.json:官方内置的JSON解析库 GSON:谷歌开源的JSON解析…

    Java 2023年5月26日
    00
  • spring boot多数据源动态切换代码实例

    下面将为您详细讲解如何实现在Spring Boot应用中实现多数据源动态切换,并提供两个示例。 一、前置条件 在开始编写代码之前,需要满足以下条件: 确保已经正确配置了多个数据源,这些数据源需要连接的数据库表结构和数据内容都应当是相同的; 当前应用中必须已经引入了相关依赖,这里采用Spring Boot 2.x版本为例: <dependencies&g…

    Java 2023年5月20日
    00
  • Java开发之spring security实现基于MongoDB的认证功能

    Java开发之spring security实现基于MongoDB的认证功能 介绍 本文将详细介绍如何使用Spring Security实现基于MongoDB的认证功能,包括用户注册、登录、忘记密码等功能。Spring Security是一个开源框架,旨在为Java应用提供身份验证和授权保护。MongoDB是一种基于文档的非关系型数据库,它的内容通常以JSO…

    Java 2023年5月20日
    00
  • 基于SpringBoot核心原理(自动配置、事件驱动、Condition)

    我将详细讲解基于SpringBoot核心原理的完整攻略,包括自动配置、事件驱动和Condition。 自动配置 SpringBoot通过自动配置(autocconfiguration)的方式,大大减轻了开发人员的工作负担。自动配置就是在应用运行时,根据类路径下的jar包、类的反射信息、注解等信息,自动配置应用所需要的组件和参数,而不需要显示的在代码中进行配置…

    Java 2023年5月15日
    00
  • java实现水果超市管理系统

    Java实现水果超市管理系统完整攻略 1. 系统需求分析 在开始开发前,需要先明确本系统的具体需求。本系统是一款水果超市管理系统,主要分为以下几个功能模块: 商品管理:包括添加商品、修改商品、删除商品、查询商品等功能。 订单管理:包括添加订单、修改订单、删除订单、查询订单等功能。 用户管理:包括添加用户、修改用户、删除用户、查询用户等功能。 登陆注册:对用户…

    Java 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部