对java工程实时监控方式很多,本文主要讲在springboot框架中的监控。

springboot框架,自带了actuator监控,在pom中引入jar包即可,如下

1.引入jar

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-actuator</artifactId>

</dependency>

在2.0版本之后改动很大,我这里是用的2.0.2

2.启动项目后即可访问

http://localhost:8081/webproject/actuator/health

http://localhost:8081/webproject/actuator/info

如果想让url个性化一点,在 application.propertie

配置文件中 加入

management.endpoints.web.base-path=/jiankong

那么就可以访问

http://localhost:8081/webproject/jiankong/health

3.actuator 提供了很多api(称为:节点)

默认只开放了 health、info两个节点

如果需要公开所有 则在配置文件中继续加入

management.endpoints.web.exposure.include=*

其中 health方法 是不显示具体的内容的,如需要

则继续加入配置

management.endpoint.health.show-details=always

具体方法和返回内容 可以参考API

GET /autoconfig 查看自动配置的使用情况 true 

GET /configprops 查看配置属性,包括默认配置 true 

GET /beans 查看bean及其关系列表 true 

GET /dump 打印线程栈 true 

GET /env 查看所有环境变量 true 

GET /env/{name} 查看具体变量值 true 

GET /health 查看应用健康指标 false 

GET /info 查看应用信息 false 

GET /mappings 查看所有url映射 true 

GET /metrics 查看应用基本指标 true 

GET /metrics/{name} 查看具体指标 true 

POST /shutdown 关闭应用 true 

GET /trace 查看基本追踪信息 true

4. 常用的查看具体指标的方法  /metrics/{name}

http://localhost:8081/webproject/actuator/metrics/http.server.requests

http://localhost:8081/webproject/actuator/metrics/jvm.memory.used

http://localhost:8081/webproject/actuator/metrics/jvm.threads.peak

等等,具体name 可以通过/metrics 获得,

其中 http.server.requests 是对所有请求的url的监控,次数,时间 等。

那么如果我们需要针对个别重点controller分别监控呢~~

5.分别监控,需要在controller上做些手脚

在RequestMapping 上面 加上注解 @Timed(value = "list.base", longTask = true)

value可以就用mapping 这样。

这个@Timed 注解 是 micrometer-core-1.0.3-sources.jar的 springboot监控本身用到的。

当访问过这个controller之后 就可以调用~ 注意还没有收到过请求的话是请求不到这个list.base的

http://localhost:8081/webproject/actuator/metrics/list.base

{

    "availableTags":[

        {

            "tag":"exception",

            "values":["None"]

        },

        {

            "tag":"method",

            "values":["POST"]

        },

        {

            "tag":"uri",

            "values":["/ListDataBase","root"]

        },

        {

            "tag":"status",

            "values":["200"]

        }

    ],

    "measurements":[

        {

            "statistic":"ACTIVE_TASKS",

            "value":0

        },

        {

            "statistic":"DURATION",

            "value":0

        },

        {

            "statistic":"COUNT",

            "value":1

        },

        {

            "statistic":"TOTAL_TIME",

            "value":0.306317164

        },

        {

            "statistic":"MAX",

            "value":0.306317164

        }

    ],

    "name":"list.base"

}

如果有兴趣研究更多。。。官网api

https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#production-ready-endpoints

springboot 实时监控 spring-boot-starter-actuator 包的更多相关文章

  1. SpringBoot 之Spring Boot Starter依赖包及作用

    Spring Boot 之Spring Boot Starter依赖包及作用 spring-boot-starter 这是Spring Boot的核心启动器,包含了自动配置.日志和YAML. spri ...

  2. SpringBoot 之Spring Boot Starter依赖包及作用(自己还没有看)

    spring-boot-starter 这是Spring Boot的核心启动器,包含了自动配置.日志和YAML. spring-boot-starter-amqp 通过spring-rabbit来支持 ...

  3. Spring Boot (九): 微服务应用监控 Spring Boot Actuator 详解

    1. 引言 在当前的微服务架构方式下,我们会有很多的服务部署在不同的机器上,相互是通过服务调用的方式进行交互,一个完整的业务流程中间会经过很多个微服务的处理和传递,那么,如何能知道每个服务的健康状况就 ...

  4. Spring Boot整合actuator实现监控管理

    Spring Boot使用actuator监控管理 1.在pom文件中导入相关的依赖 <dependency> <groupId>org.springframework.boo ...

  5. Spring boot 打成jar包问题总结

    Spring boot 打成jar包问题总结 1.Unable to find a single main class from the following candidates 1.1.问题描述 m ...

  6. Spring Boot (28) actuator与spring-boot-admin

    在上一篇中,通过restful api的方式查看信息过于繁琐,也不直观,效率低下.当服务过多的时候看起来就过于麻烦,每个服务都需要调用不同的接口来查看监控信息. SBA SBA全称spring boo ...

  7. Spring Boot (十): Spring Boot Admin 监控 Spring Boot 应用

    Spring Boot (十): Spring Boot Admin 监控 Spring Boot 应用 1. 引言 在上一篇文章<Spring Boot (九): 微服务应用监控 Spring ...

  8. 年轻人的第一个自定义 Spring Boot Starter!

    陆陆续续,零零散散,栈长已经写了几十篇 Spring Boot 系列文章了,其中有介绍到 Spring Boot Starters 启动器,使用的.介绍的都是第三方的 Starters ,那如何开发一 ...

  9. 从零开始开发一个Spring Boot Starter

    一.Spring Boot Starter简介 Starter是Spring Boot中的一个非常重要的概念,Starter相当于模块,它能将模块所需的依赖整合起来并对模块内的Bean根据环境( 条件 ...

  10. 一个简单易上手的短信服务Spring Boot Starter

    前言 短信服务在用户注册.登录.找回密码等相关操作中,可以让用户使用更加便捷,越来越多的公司都采用短信验证的方式让用户进行操作,从而提高用户的实用性. Spring Boot Starter 由于 S ...

随机推荐

  1. 了解Python-白 驹 过 隙 , 忽 然 而 已

    白 驹 过 隙 , 忽 然 而 已 人 生 苦 短,我 用 Python -- Life is short , you need Python 代码量少,同一样问题 ,用不同的语言解决时,一般情况下P ...

  2. 廖雪峰Python笔记

    △命令行模式和Python交互模式 在Windows开始菜单选择“命令提示符”,就进入到命令行模式,它的提示符类似C:\>:在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就 ...

  3. 刷题记录:[LCTF]bestphp's revenge

    目录 刷题记录:[LCTF]bestphp's revenge 一.知识点 1.SoapClient触发反序列化导致ssrf 2.serialize_hander处理session方式不同导致sess ...

  4. Nacos学习

    Nacos是阿里开源的一个新框架,在分布式的架构中,Nacos同时扮演着服务注册中心和配置中心的角色.今天主要讲的是Nacos作为服务注册中心. 分布式中著名的CAP理论,任何一种服务注册中心都只能实 ...

  5. 【mybatis源码学习】mybatis的参数处理

    一.mybatis的参数处理以及参数取值 1.单个参数 mybatis不做任何处理 取值方式: ​ #{参数名/任意名} <!-- Employee getEmpById(Integer id) ...

  6. WdatePicker 时间插件

    1.下载地址:链接:https://pan.baidu.com/s/1ggusfZX 密码:gu22 常用法: <input type="text" class=" ...

  7. [转]使用 curl 发送 POST 请求的几种方式

    HTTP 的 POST 请求通常是用于提交数据,可以通过这篇文章来了解各种提交方式:四种常见的 POST 提交数据方式.做 Web 后端开发时,不可避免地要自己给自己发请求来调试接口,这里要记录的内容 ...

  8. docker本地化异常:/bin/sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)

    docker中经常设置不了 环境变量$LC_ALL,  导致报很多奇怪的编码错误: /bin/sh: warning: setlocale: LC_ALL: cannot change locale ...

  9. word/wps 制作下拉列表

    准备: 1.数据页 2.项目名称sheet 3.问题类型sheet 开始制作: 数据 --- 有效性 --- 允许“序列” --- 来源 -- 其他sheet页“单元格”选择范围 回车.确定 即可

  10. tqdm学习-一个快速,可扩展的Python和CLI进度条

    参考:https://pypi.org/project/tqdm/ 1.安装: (base) userdeMacBook-Pro:~ user$ conda activate deeplearning ...