五分钟解锁springboot admin监控新技巧

最近这一个月由于项目进度紧张,将近一个月没有动静。分享一下最近体会的springboot监控的一些心得体会,供一些规模不是很大的团队做一些监控。

适用场景:

1、项目规模不大

2、用户量不是很大、并发要求不强

3、无专门运维力量

4、精致的团队规模

对于一些常规的项目,或者企业职责分工不是非常明确的单位来说。往往一个系统从需求到设计,开发,测试到最终上线,运维。往往80%的任务由开发团队来完成。由此,开发人员除了要实现系统的功能,还要为客户进行问题咨询答疑以及生产问题解决。

试想,一个应用上线后,没有任何监控措施。跟开着一辆没有任何仪表盘的汽车一样,这样上路,任何人都没有安全感。如何在极简和追求效率上做平衡是一件特别值得思考的事情。

本文不会讲如何搭建企业的运维监控系统,有兴趣的可以去找找成熟的比如Zabbix、Prometheus,甚至比较简单的Wgcloud都能满足一定的需求,不在此赘述。本文讲解如何使用Springboot admin对spring boot项目进行应用监控。

一、Springboot admin 是啥?

Spring Boot Admin是一个开源社区项目,用于管理和监控SpringBoot应用程序。应用程序作为Spring Boot Admin Client向为Spring Boot Admin Server注册(通过HTTP)或使用SpringCloud注册中心(例如Eureka,Consul)发现。常见的功能或者监控如下:

1、显示健康状况

2、显示构建信息编号

3、关注并下载日志文件

4、查看jvm系统和环境属性

5、轻松的日志级管理

6、与JMX-beans交互

7、查看线程转储

8、查看http跟踪

9、状态变更通知(通过电子邮件,Slack,Hipchat,…)

10、状态更改的事件日志(非持久性)

......

二、关键集成介绍

1、pom.xml 声明

<properties>
    <java.version>1.8</java.version>
    <spring-boot-admin.version>2.3.1</spring-boot-admin.version>
</properties>

2、spring-boot-admin 引入

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-client</artifactId>
    <version>${spring-boot-admin.version}</version>
</dependency>
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-server</artifactId>
    <version>${spring-boot-admin.version}</version>
</dependency>

3、server配置

server:
  # 服务器的HTTP端口,默认为8080
  port: 8085
# 日志配置
logging:
  # 已存在日志xml配置文件后,path与name 不生效
  config: classpath:logback.xml
spring:
  boot:
    admin:
      # Spring Boot Admin Server 服务端的相关配置
      context-path: /admin # 配置 Spring

4、client配置

spring:
  application:
    name: springboot-admin-monitor
  boot:
    admin:
      # Spring Boot Admin Client 客户端的相关配置
      client:
        # 设置 Spring Boot Admin Server 地址
        url: http://localhost:${server.port}${spring.boot.admin.context-path}
        instance:
          prefer-ip: true # 注册实例时,优先使用 IP

# Actuator 监控端点的配置项
management:
  endpoints:
    web:
      # Actuator 提供的 API 接口的根目录。默认为 /actuator
      base-path: /actuator
      exposure:
        # 需要开放的端点。默认值只打开 health 和 info 两个端点。通过设置 * ,可以开放所有端点。
        include: '*'
  # 已存在日志xml配置文件后,需要配置该项
  endpoint:
    logfile:
      external-file: ./logs/sys-console.log

三、相关监控实例

1、监控首页

2、应用监控信息查看

3、实时日志输出

4、动态调节日志级别

5、jvm

四、总结

以上介绍了在生产中如何采用springboot admin来监控你的应用,其实admin的监控功能远不止上文介绍的,还可以集成邮件通知,有外网使用钉钉的,也可以进行相应集成,比如在应用下线的时候可以进行相应的通知。个人比较喜欢的功能是日志web可视化,开发人员再也不需要通过客户端工具连到服务器上去看日志,提高了效率,同时可以动态调整日志的级别,也能高效管理日志输出。另外jvm的管理也能随时管理,提高定位问题的效率。希望对你有所帮助。

本文参考代码gitee链接:https://gitee.com/JavaLionLi/springboot-admin-demo(有帮助的话,可以给作者点个star)

以上就是五分钟解锁springboot admin监控新技巧的详细内容,更多关于springboot admin监控的资料请关注我们其它相关文章!

(0)

相关推荐

  • 用SpringBoot Admin监控SpringBoot程序

    项目源码地址:https://github.com/laolunsi/spring-boot-examples/tree/master/02-spring-boot-admin-demo 一.SpringBoot Admin概要 SpringBoot Admin用于监控SpringBoot程序,一个SpringBoot程序通过向SpringBoot Admin Server注册或使用@DiscoveryClient等微服务方式,可以将自身注册到SpringBoot Admin Server. S

  • 如何用Springboot Admin监控你的微服务应用

    1 简介 目前,微服务大行其道,各大小公司争相学习模仿,把单体应用拆得七零八落.服务多了,运行的实例多了,给运维人员的压力就更大了.如果有十几个应用,单单做Health Check就已经够费时间的了.聪明的Springboot提供了Actuator接口,可以非常好获得应用的内部信息,然而针对数量庞大的服务却无能为力. 得益于开源社区的力量,我们有了Springboot Admin.它能对注册于服务发现的所有应用监控起来,功能包括健康检查.JVM内存.INFO信息.获得线程栈和堆栈信息.提醒(邮件

  • 使用spring-boot-admin对spring-boot服务进行监控的实现方法

    spring-boot-admin,简称SBA,是一个针对spring-boot的actuator接口进行UI美化封装的监控工具.他可以:在列表中浏览所有被监控spring-boot项目的基本信息,详细的Health信息.内存信息.JVM信息.垃圾回收信息.各种配置信息(比如数据源.缓存列表和命中率)等,还可以直接修改logger的level. 官网:https://github.com/codecentric/spring-boot-admin 使用指南:http://codecentric.

  • 使用Spirng Boot Admin监控Spring Cloud应用项目

    一. 介绍 GitHub: https://github.com/codecentric/spring-boot-admin 官方文档: http://codecentric.github.io/spring-boot-admin/1.5.7/ (此文档为1.5.7版本的文档) The applications register with our Spring Boot Admin Client (via HTTP) or are discovered using Spring Cloud ®

  • 如何基于springboot-admin实现后台监控

    一 前言 知识追寻者springboot系列文中又添加一文,springboot后台应用监控,希望广大读者支持,多多关注点赞:如果没有学习过actuator端点暴露文章,建议查询知识追寻者专栏进行学习: 二 springboot admin介绍 Spring Boot Admin是一个开源社区项目,用于管理和监控SpringBoot应用程序:工作方式是 Spring Boot Admin Client向为Spring Boot Admin Server注册(通过HTTP)或使用SpringClo

  • 详解使用spring boot admin监控spring cloud应用程序

    Spring Boot提供的监控接口,例如:/health./info等等,实际上除了之前提到的信息,还有其他信息业需要监控:当前处于活跃状态的会话数量.当前应用的并发数.延迟以及其他度量信息. 最近在找一个spring cloud的监控组件,要求粒度要到每一个接口的,hystrix dashboard显然不适合,也不是这个应用场景.后来发现了spring boot admin这个神器,可以注册到Eureka和spring cloud无缝整合,页面AngularJS写的还算凑合,里面包含有许多功

  • Spring Boot集群管理工具KafkaAdminClient使用方法解析

    原理介绍 在Kafka官网中这么描述AdminClient:The AdminClient API supports managing and inspecting topics, brokers, acls, and other Kafka objects. 具体的KafkaAdminClient包含了一下几种功能(以Kafka1.0.0版本为准): 创建Topic:createTopics(Collection<NewTopic> newTopics) 删除Topic:deleteTopi

  • 五分钟解锁springboot admin监控新技巧

    最近这一个月由于项目进度紧张,将近一个月没有动静.分享一下最近体会的springboot监控的一些心得体会,供一些规模不是很大的团队做一些监控. 适用场景: 1.项目规模不大 2.用户量不是很大.并发要求不强 3.无专门运维力量 4.精致的团队规模 对于一些常规的项目,或者企业职责分工不是非常明确的单位来说.往往一个系统从需求到设计,开发,测试到最终上线,运维.往往80%的任务由开发团队来完成.由此,开发人员除了要实现系统的功能,还要为客户进行问题咨询答疑以及生产问题解决. 试想,一个应用上线后

  • 五分钟教你手写 SpringBoot 本地事务管理实现

    白菜Java自习室 涵盖核心知识 1. SpringBoot 事务 一直在用 SpringBoot 中的 @Transactional 来做事务管理,但是很少没想过 SpringBoot 是如何实现事务管理的,今天从源码入手,看看 @Transactional 是如何实现事务的,最后我们结合源码的理解,自己动手写一个类似的注解来实现事务管理,帮助我们加深理解. 1.1. 事务的隔离级别 事务为什么需要隔离级别呢?这是因为在并发事务情况下,如果没有隔离级别会导致如下问题: 脏读 (Dirty Re

  • SpringBoot Admin 如何实现Actuator端点可视化监控

    目录 SpringBoot Admin 实现Actuator端点可视化监控 简介 Spring Boot Admin Server Spring Boot Admin Client 启动客户端, 在管理端进行可视化端点监控 Spring Boot 监控信息可视化 一.设置Spring Boot Admin Server 二.注册客户端 SpringBoot Admin 实现Actuator端点可视化监控 简介 Actuator可视化监控SpringBoot Admin Note: SpringB

  • springboot项目监控开发小用例(实例分析)

    Spring Boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者. SpringBoot简介 SpringBoot是由Pivotal团队在2013年开始研发.2014年4月发布第一个版本的全新开源的轻量

  • 五分钟带你了解Java的接口数据校验

    本篇文章给大家分享平时开发中总结的一点小技巧!在工作中写过Java程序的朋友都知道,目前使用Java开发服务最主流的方式就是通过Spring MVC定义一个Controller层接口,并将接口请求或返回参数分别定义在一个Java实体类中,这样Spring MVC在接收到Http请求(POST/GET)后,就会自动将请求报文自动映射成一个Java对象.这样的代码通常是这样写的: @RestController public class OrderController { @Autowired pr

  • SpringBoot Admin健康检查功能的实现

    目录 admin 实现admin功能 创建客户端 主动上报的服务端 实现效果 异常通知 邮件通知 其他通知 代码地址 admin 监控检查,检查的是什么了.检查的是应用实例状态,说白了就是被查服务提供信息给检查服务端.在spring cloud 中可以有两种方式进行健康检查,一种是应用主动上报到admin服务端,第二种就是的admin项目eureka服务端拉取信息. admin主要就是告诉运维人员,服务出现异常,然后进行通知(微信.邮件.短信.钉钉等)可以非常快速通知到运维人员,相当报警功能.应

  • SpringBoot Admin集成诊断利器Arthas示例实现

    目录 前言 SpringBoot Admin SBA 集成 客户端配置 在配置中心加入配置 实现开关效果 结束 前言 Arthas 是 Alibaba开源的Java诊断工具,具有实时查看系统的运行状况,查看函数调用参数.返回值和异常,在线热更新代码,秒解决类冲突问题.定位类加载路径,生成热点图,通过网页诊断线上应用.  如今在各大厂都有广泛应用,也延伸出很多产品. 这里将介绍如何将Arthas集成进SpringBoot监控平台中. SpringBoot Admin 为了方便SpringBoot

  • 睡五分钟等于六钟头的方法(熬夜站长必看)

    睡觉的诀窍 根据医学和我的体验.观察,一个人真正睡着觉最多只有两个钟头,其余都是浪费时间,躺在枕头上做梦,没有哪个人不做梦.至于醒来觉得自己没有做梦,那是因为他忘记了. 通常一个人睡两个钟头就够了,为什么有人要睡七.八个钟头?那是你赖床躺在枕头上休息的习惯养成的,并非我们需要那么久的睡眠时间,尤其打坐做功夫的人晓得,正午只要闭眼真正睡着三分钟,等于睡两个钟头,不过要对好正午的时间.夜晚则要在正子时睡着,五分钟等于六个钟头. 就这个时间的学问又大了,同宇宙法则.地球法则.易经阴阳的道理有关系,而且

随机推荐