SpringBootAdmin监控信息讲解

我们搭建了一个SpringBoot Admin监控平台,用来监控我们的SpringBoot项目,我们的平台运行以后,现在可以监控到

HelloWorld的项目了,其实这个就是我们在运行的SpringBoot-helloworld的项目,APPLICATION这个视图下

http://localhost:9090/#/

我们来查看一下详细信息

http://localhost:9090/#/applications/cbadc2b1/details

这个时候又跳到了另一个页面,这个页面里为我们提供了很多的信息,比如第一个是详细信息,然后Metrics,还有Environment,

还有logging,还有JMX,我们一个一个来看一下,首先是一个details,这里主要是监控应用的详细信息,你看这里也有Health,

这个不就是曾经在我们的项目当中,通过URI,通过他看到的信息,只不过不同的是什么呢,他现在把JSON格式的字符串,在UI当中

以视图的方式来显示了,我们看起来会更方便一些,比如当前的应用是UP状态的,然后磁盘的一个空间,有多少可用的,最少需要的

临界值,你的程序在运行的时候,磁盘最少需要多少,还有内存的信息,JVM的信息,现在用这种可视化界面,去查看我们的监控信息,

那么对于我们使用者来讲,更加一目了然,比我们看JSON字符串的要方便一些,其实Details呢,主要显示你当前监控应用的基础信息

Metrics是对我们当前监控的应用,做了一个分明别类上的概念上的统计,比如第一个是classes,当前你的应用

运行一共有多少个class运行了,然后有多少个class类加载器在运行,然后没有加载的class有多少个,对我们

class的一个统计

Counter这一块主要是对我们http请求,做了一个计数的统计,比如请求状态是200的,200的info有多少个,

200以下产生的logger有多少个,我们看一下404的有3个,在我们的项目当中,是不是有一个hello的URI,

我们再来访问一下hello,看spring boot admin看还能不能访问到,看我们的浏览器

localhost:8080/hello

这个响应回来了,只不过我们这里什么都没有,是不是多了一个

counter.status.200.hello

表示你当前请求过一次hello,比如我现在再去请求一次,这个时候hello请求的次数是2了,所以这里主要是统计当前你

HTTP请求的一个数量

gauge这个主要是统计什么呢,主要统计响应的一些信息,比如响应hello,有多少其他信息的一个响应,

还有堆的dump信息,针对响应去做的统计分析,咱们再往后看

gc对垃圾收集器做了一个统计的分析,像垃圾回收一共做了多少次,在JDK1.8里面用的是scavenge收集器,

收集了8次,然后收集的时间是205毫秒,然后marksweep,这个是当前scavenge垃圾收集器里面,用的是什么

样的算法,去做的回收,这里用的是一个标记清除算法,标记清除算法用了两次,所耗的时间是138毫秒,所以这里

是对垃圾回收器的一个统计,然后heap是对堆的一个统计,初始化是多大,然后用了多少,堆的总大小是多少,

JVM占用的堆的总大小是多少,堆的总共容量是多少,然后还有httpsessions,你当前被监控的项目产生了多少个

Session对象,那么我们现在没有用到session,我们项目当中并没有去创建session,产生的session数量是没有的,

激活的session数量也是没有的,instance.uptime这个是你当前实例所运行的时间,单位也是毫秒,我刷新毫秒数

是有变化的,他不是实时的,你每次刷新这个时间都会有变化的

mem是什么呢,就是memory,监控内存的,我们JVM总共占了内存多少空间,现在剩余多少空间,

然后还有nonheap,这个是什么呢,非堆内存的一个使用情况,其实JVM除了有堆,还有非堆,这里主要是统计非堆的

一些统计信息,processors这个是你当前物理CPU的核心数量,这里写的是4,表示我当前运行HelloWorld的这个项目,

当前硬件CPU的核心数,是4个,然后还有一个systemload,这是什么呢,记录你当前系统的一个负载量,其实我们被监控的

helloworld里面,负载量是很小很小的,主要显示你当前系统的负载量,然后还有一个threads,当前系统的线程信息,

比如threads.peak,你当前系统当中,最高峰值是多少,守护线程是20个,启动的是28个线程,这是对线程信息的一个统计

uptime你当前程序运行状态的一个时间,也是毫秒数,能够被正常运行的一个状态,通过Metrics里面,

对于helloworld的一个统计,应该还是很有用的,感兴趣的还可以看看里面详细的内容

Environment主要是显示你当前系统的环境,其实Environment里面看到的信息,就是我们之前访问项目,

通过/env,通过这个URI,访问所得到的信息,不过当时是以JSON格式返回的,而在这里是以视图,以视图返回的,

可以看到监听的端口,还有java.runtime.name,还有JRE环境的路径,版本,这都是一些JVM的信息

logging主要记录当前哪些类有日志记录的级别,info的有哪些,哪些类里面用的是info级别的

哪些是debug级别的,哪些是warn级别的,然后下面还有更多,显示了你当前用的类当中,一个日志记录级别的

显示

JMX是什么呢,大家应该都知道,他是一个管理工具,他的全称是什么呢,是JAVA管理扩展,

他也是一个标准,这个标准下的管理平台呢,是可以跨越任何操作系统的,操作系统差异的一个影响,

它是可以跨所有操作系统的,对于不同操作系统的下的JAVA程序,是可以做一个管理,这里也是当前helloworld

的一些监控信息,然后还有一个Threads,其实我们这里看到的信息,是我们之前看到的dump里面的文件信息,请求

duump里看到的信息,他都是以JSON格式串来看的,而在springboot admin里面,就是可视化视图下,RUNNABLE正在运行

的线程,然后等待线程又多少个,然后把所有的线程以一个列表的形式,展示出来,并标记每一个线程的一个状态,比如你可以

点他,看一下这个线程,他正在RUNNABLE运行

锁了多少次,然后还有锁的时间,还有等待数量,等待时间,所以我们可以通过查看线程的基本信息,

也能知道线程的一个状态,对于dump文件里的一个展示,然后还有一个Audit,就是审计,这里你可以

根据你的时间,去做一些相应的统计处理,还有一个Trace,Trace是什么呢,你的被监控的系统,所处理

请求的一个显示,在什么时间,请求了什么,基于什么请求的,状态是什么,你看这里有一个图形来显示,

然后如果有错误的,就会有错误的状态码,来显示出他当前一个响应的状态,请求的一个状态,当然你请求的

量越多,这个图当中显示的数据就越多,后面是你请求的URI

还有一个HeadDump,显示我们的堆dump信息,它会启动一个下载,会把监控的dump文件下载,下载之后我们把它解压,

对dump文件进行详细的分析,JDK当中也有这样的工具,在这里我们就不去说了,APPLICATIONS一共有这么多的统计项,

或者叫管理项,除了Applications,还有一个JOURNAL,JOURNAL主要是显示日志的信息,我们可以看一看,显示当前状态是

正常运行的状态

UNKNOWN -> UP

我没有其他的日志显示,信息比较少

关于SpringBoot Admin信息平台的显示,其实Spring boot admin的平台呢,他用起来还是挺方便的,

希望大家多用他去监控程序,比我们用JSON格式的形式去监控,我们程序的健康状态,当然这种监控方式,

我们在做项目的时候,没有用这种监控,如果你不是做微服务的开发,只是单应用的话,或者服务应用不多的

时候,dubbo里面也有这种监控平台,但是如果我们要做微服务开发,我们未来的服务项会非常的多,项目会非常

的多,你要想了解每一个项目,或者每一个服务的状态,这个时候你需要有一个管理平台,这个时候我们才能够

通过管理平台的一个状态,这也是我们在做微服务开发的时候,非常重要的一个环境,这是平台显示的根目录,

根页面,这里我们可以去点击Details

http://localhost:9090/#/

看这些详细信息,就是这样的使用方式,那么到目前为止呢

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值