• Spring Boot2.0之 监控管理


    Spring boot监控中心:

     针对微服务的服务状态,服务器的内存变化(内存、线程、日志管理等)检测服务配置连接地址是否有用(有些懒加载的情况下,用的时候发现卧槽不能用)模拟访问,懒加载。统计有多少个bean(Spring 容器中的bean)、统计Spring MVC 中@RequestMapping(统计接口数)

    Actuator监控应用(无界面,返回json格式)

    AdminUi底层使用Actuator监控应用,实现可视化界面

    Actuator是spring boot的一个附加功能,可帮助你在应用程序生产环境时监视和管理应用程序。可以使用HTTP的各种请求来监管,审计,收集应用的运行情况.特别对于微服务管理十分有意义.缺点:没有可视化界面。

    应用场景:生产环境

    1、首先maven工程的pom,需要引入相关的依赖jar

        

    <project xmlns="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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>SpringbootActuator</groupId>
      <artifactId>com.toov5.Actuator</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      
      <parent>
    		<groupId>org.springframework.boot</groupId>
    		<artifactId>spring-boot-starter-parent</artifactId>
    		<version>2.0.0.RELEASE</version>
    	</parent>
    	<dependencies>
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-web</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-actuator</artifactId>
    		</dependency>
    
    	</dependencies>
    
      
    </project>
    

      

     2、然后application.yml的文件配置,主要对于监控中心的一些设置。

    ###通过下面的配置启用所有的监控端点,默认情况下,这些端点是禁用的;加入这个配置。监控所有接口
    management:
      endpoints:
        web:
          exposure:
            include: "*"

    3、业务代码

    package com.toov5.controller;
    
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class IndexController {
        @RequestMapping("/ok")
        public String index(){
            return "ok";
        }
    }

    4、启动类

    package com.toov5.controller;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class app {
       public static void main(String[] args) {
        SpringApplication.run(app.class, args);
    }
    }

    启动后:

    看控制台输出

    被圈的日志是 表示有多少接口 

    里面的请求是从actuator里面来的  监控中心产生了很多接口      默认情况下是禁止的哈 如果把yml配置里面的内容去掉的话就没有这么多了

    默认情况下监控中心提供三个接口 信息很少的 一般不用这三个 满足不了 

    Spring Boot2.0之后 监控中心的地址发生变化 必须这个地址才可以访问到  之前版本是不用加 actuator  访问监控中心

     

     访问这个url 可以看到当前Spring容器有多少bean

     可以把这些json格式化

     还可以检测当前容器中有多少 url映射接口

    通过json在线格式化

     可以看到我的接口的信息:

    展示的很清楚 各种信息

    里面很多 是监控中心提供的  各种啊 好多啊

    #################################################################

    如果msql连接的账号或密码错误 在项目启动时候不会报错 因为懒加载呀

    可以通过监控中心去处理

    返回这个说明 没错

    如果是 down则有错

    原理是 访问时候 控制中心会去读配置文件 然后去处理下试试

    查看自定义应用信息

    在配置文件中配置info开头的配置信息

     

    总结:

    Actuator访问路径

    通过actuator/+端点名就可以获取相应的信息。

    路径

    作用

    /actuator/beans

    显示应用程序中所有Spring bean的完整列表。

    /actuator/configprops

    显示所有配置信息。

    /actuator/env

    陈列所有的环境变量。

    /actuator/mappings

    显示所有@RequestMapping的url整理列表。

    /actuator/health

    显示应用程序运行状况信息 up表示成功 down失败

    /actuator/info

    查看自定义应用信息

  • 相关阅读:
    用gdb调试python多线程代码-记一次死锁的发现
    使用docker部署standalone cinder
    Linux上open-iscsi 的安装,配置和使用
    Windows上Ruby开发环境的配置
    在Pypi上发布自己的Python包
    docker X509 证书错误的终极解决办法
    oslo_config中的DuplicateOptError坑
    删除emacs临时文件
    xfce4快捷键设置
    设置emacs启动窗口的两种方法
  • 原文地址:https://www.cnblogs.com/toov5/p/9823353.html
Copyright © 2020-2023  润新知