zoukankan      html  css  js  c++  java
  • springboot admin 监控

    Spring Boot Admin 简介

    使用 Spring Boot Admin 可以管理和监控你的 Spring Boot 项目。

    它分为客户端服务端两部分,客户端添加到你的 Spring Boot 应用增加暴漏相关信息的 HTTP 接口,然后注册到 Spring Boot Admin 服务端,这一步骤可以直接向服务端注册,也可以通过 Eureka 或者 Consul 进行注册。

    Spring Boot Admin Server 通过 Vue.js 程序监控信息进行可视化呈现。支持多种事件通知操作。

    Service 端

    引入依赖:

            <dependency>
                <groupId>de.codecentric</groupId>
                <artifactId>spring-boot-admin-starter-server</artifactId>
                <version>2.1.0</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-security</artifactId>
            </dependency>

    编写 application.yml 配置:

    spring:
      security:
        user:
          # 登录账号
          name: user
          # 登录密码
          password: 123456
    server:
      port: 8081

    添加 @EnableAdminServer 注解:

    @EnableAdminServer
    @SpringBootApplication
    public class SystemApplication {
        public static void main(String[] args) {
            SpringApplication.run(SystemApplication.class, args);
        }
    }

    添加安全认证

    因为是部署在公网中,所以增加权限账号登录验证。账号密码已经在 application.yml 中配置好了。还需要实现如下权限拦截。

    @Configuration
    public class SecurityConfig extends WebSecurityConfigurerAdapter {
        @Override
        protected void configure(HttpSecurity http) throws Exception {
            // 跨域设置,SpringBootAdmin客户端通过instances注册
            http.csrf().csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())
                    .ignoringAntMatchers("/instances");
            // 静态资源
            http.authorizeRequests().antMatchers("/assets/**").permitAll();
            // 所有请求必须通过认证
            http.authorizeRequests().anyRequest().authenticated();
            // 整合spring-boot-admin-server-ui
            http.formLogin().loginPage("/login").permitAll();
            http.logout().logoutUrl("/logout").logoutSuccessUrl("/login");
            // 启用basic认证
            http.httpBasic();
        }
    }

    至此,Service 端 已完成配置,对应的访问地址:http://localhost:8081

    配置 Client 端

    引入依赖:

            <dependency>
                <groupId>de.codecentric</groupId>
                <artifactId>spring-boot-admin-starter-client</artifactId>
                <version>2.1.0</version>
            </dependency>

    编写 application.yml 配置:

    spring:
      application:
        name: springbootadminclient
      boot:
        admin:
          client:
            # Spring Boot Admin 服务端地址
            url: http://localhost:8081
            username: user
            password: 123456
            instance:
              prefer-ip: true
    management:
      endpoint:
        health:
          # 端点健康情况,默认值 "never",设置为 "always" 可以显示硬盘使用情况和线程情况
          show-details: always
      endpoints:
        web:
          exposure:
            # 设置端点暴露的哪些内容,默认 ["health","info"],设置 "*" 代表暴露所有可访问的端点
            include: "*"
  • 相关阅读:
    Jmeter 使用技巧 (如何在linux下运行jmeter视窗界面呢)-jmeter如何模拟http发送gzip数据
    1.Jmeter 快速入门教程(一)
    4.jmeter在线并发的怎样设置
    3.jmeter jsr232 脚本获取当前测试的正在活动的线程数
    2.Jmeter 如何在jsr223 脚本中停止测试任务
    1.如何在JMeter中使用JUnit
    app电量测试
    梯度下降法实现对数几率回归
    基于C/S模式的简易聊天室
    大数据使用及现状调研报告
  • 原文地址:https://www.cnblogs.com/ooo0/p/14434948.html
Copyright © 2011-2022 走看看