微服务系统监控

关键词: Spring Cloud Alibaba, SpringBoot Actuator

看了B站关于监控系统的发展,一开始他们给各个系统单独装各种监控报错(docker,redis)导致监控页面太多了。后来选择了整合的方式,根据事件统一看监控。

服务监控

基本介绍

  • 什么是服务监控

监视当前系统应用状态、内存、线程、堆栈、日志等等相关信息,主要目的在服务出现问题或者快要出现问题时能够准确快速地发现以减小影响范围。

  • 为什么要使用服务监控

服务监控在微服务改造过程中的重要性不言而喻,没有强大的监控能力,改造成微服务架构后,就无法掌控各个不同服务的情况,在遇到调用失败时,如果不能快速发现系统的问题,对于业务来说就是一场灾难。

  • spring boot actuator 服务监控接口

actuator是监控系统健康情况的工具。
Spring Boot Actuator是Spring Boot中一个非常有用的功能,它允许您在应用程序运行时监控和管理应用程序。它包含了许多内置的端点(endpoint),可以用来查看应用程序的健康状态、内存使用情况、线程数、请求日志、配置信息等等。通过Spring Boot Actuator,您可以很方便地获取应用程序的各种度量指标,从而可以更好地了解应用程序在运行中的情况,并进行必要的管理和优化。

Spring Boot Actuator不仅可以提供内置的端点,还可以允许您自定义端点,以满足特定的监控和管理需求。您可以通过简单的配置和编写代码,轻松地添加自定义端点,并提供必要的监控和管理功能。

总之,Spring Boot Actuator是一个非常强大的工具,可以帮助您轻松地监控和管理Spring Boot应用程序,提高应用程序的可靠性和性能。

  • spring boot admin 服务监控管理

Spring Boot Admin是一个针对spring-bootactuator接口进行UI美化封装的监控工具。他可以:在列表中浏览所有被监控spring-boot项目的基本信息,详细的Health信息、内存信息、JVM信息、垃圾回收信息、各种配置信息(比如数据源、缓存列表和命中率)等,还可以直接修改logger的level。

如何使用

1、新建监控模块,添加依赖

<!-- SpringBoot Actuator -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

2、在application.yml配置暴露所有监控端点

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

3、启动监控模块

4、启动后访问http://IP:端口号/actuator,返回正确数据表示测试通过。

# 端点分类

地址描述
/beans显示所有的Spring bean列表
/caches显示所有的缓存相关信息
/scheduledtasks显示所有的定时任务相关信息
/loggers显示所有的日志相关信息
/configprops显示所有的配置信息
/env显示所有的环境变量信息
/mappings显示所有控制器相关信息
/info显示自定义用户信息配置
/metrics显示应用指标相关信息
/health显示健康检查状态信息,up表示成功 down表示失败
/threaddump显示程序线程的信息

# 整合Admin-Ui

1、添加依赖

<!-- SpringBoot Admin -->
<dependency>
	<groupId>de.codecentric</groupId>
	<artifactId>spring-boot-admin-starter-server</artifactId>
	<version>${spring-boot-admin.version}</version>
</dependency>

2、在启动类添加注解

@EnableAdminServer

浏览器访问http://IP:端口可以看到以监控界面

客户端整合(无配置中心)

如果没有配置中心,则需要在客户端填写Admin服务端地址

1、添加依赖

<!-- SpringBoot Admin Client -->
<dependency>
	<groupId>de.codecentric</groupId>
	<artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>

<!-- SpringBoot Actuator -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

2、配置服务端地址

spring:
  application:
    name: ruoyi-admin-client
  boot:
    admin:
      client:
        url: http://localhost:9100

集成Nacos

似乎,,没什么要做的,,,,监控端正常集成下nacos就行了,,

集成spring security添加登录认证

正常集成spring security即可

实时日志

Spring Boot Admin提供了基于Web页面的方式实时查看服务输出的本地日志,前提是服务中配置了logging.file.name

bootstrap.yml

logging:
  file:
    name: logs/${spring.application.name}/info.log
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值