Actuator|学习笔记

简介: 快速学习Actuator

开发者学堂课程【高校精品课-厦门大学 -JavaEE 平台技术Actuator学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/80/detail/15907


Actuator


spring-boot-starter-actuator

处理我们前面所提到的常见的starter以外,spring-boot 提供了一个特别的starter,叫做 spring-boot-starter-actuator,这个start 不是用来去完成特定的业务功能,它的主要的功能是用来做监控,也就是我们基本上在这个 start 的 java上头是不会直接引用去写任何代码,引入了这个 start,我们的这样的一个spot的应用具备了监控功能。监控是我们这样的一个多服务器的这样的一个结构,就是我们微服务体这个中间必不可少的一个最基本的性能,Spring boot 对于这个微服务都提供了这样的一个监控的支持,就是底层的支持。所以说当我们把这样的一个 start 引进来以后,我们的部署上去的 spring-boot 的一个应用就具备了这样的一个监控健康检查审计,以及一些控制的一些功能。我们具体的这个功能我们来看,我们加上了这个 acrid 的这样的一个 start 以后,这个程序会变成什么样,以及我们给大家介绍一个可以去简单管理所有的这个 Spring boo t应用的这样的一个 Adminui 这样的一个程序

<?xml version="1.0" encoding="UTF-8"?>

<projectxmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 " >https://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.5.3</version>

<relativePath/> <!-- lookup parent from repository -->

</parent>

<groupId>cn.edu.xmu</groupId>

<artifactId>adminui</artifactId>

<version>0.0.1-SNAPSHOT</version>

<name>adminui</name>

<description>UI for Actuator</description>

<dependencies>

<dependency>

<groupId>de.codecentric</groupId>

<artifactId>spring-boot-admin-starter-server</artifactId>

<version>2.4.3</version>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-webflux</artifactId>

</dependency>

<dependency>

<groupId>org.jolokia</groupId>

<artifactId>jolokia-core</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter</artifactId>

</dependency>

<dependency>

<groupId>com.googlecode.json-simple</groupId>

<artifactId>json-simple</artifactId>

<version>1.1</version>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-actuator</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

<exclusions>

<exclusion>

<groupId>org.junit.vintage</groupId>

<artifactId>junit-vintage-engine</artifactId>

</exclusion>

</exclusions>

</dependency>

</dependencies>

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

</plugins>

</build>

<repositories>

<repository>

<id>alimaven</id>

<name>aliyun maven</name>

<url>http://maven.aliyun.com/nexus/content/groups/public/</url>

</repository>

</repositories>

</project>

我们看一下 spring-boot 跑起来是个什么样?首先把它做一下打包。打包完成以后,我们用 spring-boot 的 run把它跑起来。跑起来以后,我们可以在浏览器中间输入localhost:8080/actuator。这个服务器的 extra 所返回的一些相关的信息。这

样的信息其实是不太适合看,所以我们使用了另外一个包。

也就是 spring-boot admin start 这样的一个工程来收集 Accurate 的信息。然后以

web 的方式把它显示出来。工程在我们的admin UI目录下。打开admin UI的目录。如果没有 input 先把它 add project。看它的 pom 文件。它的 pom 文件非常的简单。它的 pom 文件里面用了 spring-boot admin Starter server。然后它的web服务器是用的非主赛事技术站的 web flux,所以说它不是用的 start web,它是用的 start web flux。然后它有这个 boot starter。

以及这个accurate。我们可以看一下代码的代码里头没有任何的代码其实就是一个Application,然后前面加个 spring-boot 的 Application,然后它加了一个自己的标签。这个标签的作用是使得我们的 serve 能够跟得起来。它的配置中间只写了它的端口号是在8081。所以我们刚才在 Out wear demo 的那个例子,我们可以看到它的配置文件中间。它写了s pring-boot admin URL。是因为我们两个应用都装在一台机器上。所以它向在本地的这个8081端口登记信息,我们把 admin UI跑起来。编译打包。然后用 spring-boot 的 run 跑起来。在本地的这个8081端口。能

看到它的管理界面有一个应用已经登记上来了,

image.png

是运行在8080端口的一个应用。我们点进去的话是可以看到这个应用的一些相关的信息的。我们点应用墙这个菜单。

image.png

这里头如果有多个应用的话,的确是会有多个出来,然后现在只有一个点进去的话,我们就能看到它在 accurate 里头所能看到的一些信息,这样子显示变得更加的友好,比如说我们能看到它的这个。环境信息。比如说我们能看到它的所有的bin的信息。能看到它配置信息,以及它的一些定时任务等等。另外我们还能看到它的一些各个吧的日志的配置。JVM 等等这些相关的信息,这就是我们的 admin UI。

相关文章
|
3月前
|
监控 安全 Java
SpringBoot应用-Actuator监控
Spring Boot Actuator 是 Spring Boot 提供的一个独立模块,旨在通过简单的方式提供应用程序的监控和管理功能。Actuator 内置了多种端点(Endpoints),可以用于查看应用的健康状况、配置属性、日志级别等。
668 1
|
11月前
|
Docker 容器
docker 修改容器内的系统时间
【10月更文挑战第27天】docker 修改容器内的系统时间
2956 2
|
11月前
|
移动开发 Unix Linux
拉取代码编辑器中报错`Delete ␍ prettier/prettier` 问题的解决方案
通过正确配置Prettier、EditorConfig文件和编辑器设置,可以有效解决 `Delete ␍ prettier/prettier`的问题。这不仅能避免频繁的格式化错误,还能确保团队成员在不同开发环境下的代码风格一致,提升项目的代码质量和可维护性。按照上述解决方案调整配置后,您的项目将更加规范,代码也会更具一致性。
958 4
|
12月前
|
调度
Doris给动态分区添加历史分区问题汇总
Doris动态分区表添加历史分区
|
12月前
|
监控 数据可视化 Java
springBoot:actuator&admin 图形可视化&spring 打包 (七)
本文介绍了Spring Boot Actuator及其图形化管理界面Spring Boot Admin的使用方法,包括依赖导入、服务端与客户端配置、以及如何打包为JAR和WAR文件并部署。通过这些步骤,可以实现应用的监控和管理功能。
493 0
|
运维 Prometheus 监控
Spring Boot中使用Actuator监控应用状态
Spring Boot中使用Actuator监控应用状态
|
资源调度 Kubernetes Java
Flink--2、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)
Flink--2、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)
|
监控 安全 Java
解析Spring Boot中的Actuator端点
解析Spring Boot中的Actuator端点
|
存储 安全 Java
Spring Security的密码加密和校验
本文介绍了Spring Security中密码的加密和校验。首先,在`SecurityConfig`配置类中添加了两个Bean,一个是`PasswordEncoder`的无操作实例,用于明文密码校验,另一个是`UserDetailsService`,用于创建内存中的用户信息。接着,文章对比了对称加密、非对称加密和摘要加密三种加密方式,并重点讲解了BCrypt摘要加密的特性,强调其安全性高于MD5。最后,通过代码示例展示了如何使用BCryptPasswordEncoder改造权限密码加密,确保密码的安全存储和校验。
752 6
|
Java
apache-incubator-streampark源码编译本地运行(七)
apache-incubator-streampark源码编译本地运行(七)
172 1