对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. 【04NOIP普及组】火星人(信息学奥赛一本通 1929)(洛谷 1088)

    [题目描述] 人类终于登上了火星的土地并且见到了神秘的火星人.人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法.这种交流方法是这样的,首先,火星人把一个非常大的数字告诉人类 ...

  2. hdfs、yarn集成ranger

    一.安装hdfs插件 从源码安装ranger的服务器上拷贝hdfs的插件到你需要安装的地方 1.解压安装 # tar zxvf ranger-2.1.0-hdfs-plugin.tar.gz -C / ...

  3. 刷题之给定一个整数数组 nums 和一个目标值 taget,请你在该数组中找出和为目标值的那 两个 整数

    今天下午,看了一会github,想刷个题呢,就翻出来了刷点题提高自己的实际中的解决问题的能力,在面试的过程中,我们发现,其实很多时候,面试官 给我们的题,其实也是有一定的随机性的,所以我们要多刷更多的 ...

  4. 在本地搭建hyperledger fabric 网络

    参考了官方文档,直接就可以了https://hyperledger-fabric.readthedocs.io/en/latest/build_network.html 很好用 ➜ ~ cd $GOP ...

  5. vue---使用Class

    在用vue-cli开发项目的时候,很多时候会用到类.具体的使用方法: config.js(使用类,还可以定义构造函数) class config { /** * 构造函数 * @param {stri ...

  6. SpringBoot @Autowired中注入静态方法或者静态变量

    注:用static去定义一个注入的方法或者配置文件值变量,编译时不会有任何异常,运行时会报空指针. Spring官方不推荐此种方法. 原理: https://www.cnblogs.com/chenf ...

  7. Ehcache 学习入门

    目录 介绍 导入jar包 创建配置文件 第一个使用示例 配置文件解析 第一部分:CacheManager 第二部分:diskStore 第三部分:cache 总结 介绍 网上有很多关于Ehcache的 ...

  8. Spring cloud微服务安全实战-7-5配置grafana图表及报警

    先过一下grafana的配置文件 grafana的配置文件. 右键服务的地址.发信人 账号 和面等 配置要连到prometheus上. 登陆的密码是多少,第二行是不允许用户注册. dashboard. ...

  9. Hadoop记录-Apache hadoop+spark集群部署

    Hadoop+Spark集群部署指南 (多节点文件分发.集群操作建议salt/ansible) 1.集群规划节点名称 主机名 IP地址 操作系统Master centos1 192.168.0.1 C ...

  10. IDEA中MyBatis插件的安装及使用

    这个插件的好处就在于能自动关联mapper类与xml,让你可以快速的互相跳转,还能帮助你做简单的排错. 安装方法: 1.File→Settings→Plugins,输入mybatis plugin,本 ...