对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. 【luoguP4544】[USACO10NOV]购买饲料Buying Feed

    题目链接 首先把商店按坐标排序 \(dp_{i,j}\)表示前i个商店买了j吨饲料并运到终点的花费,二进制拆分优化转移 #include<algorithm> #include<io ...

  2. 【03NOIP普及组】栈(信息学奥赛一本通 1924)(洛谷 1044)

    #include<bits/stdc++.h> using namespace std; int n,ans,m,k,ans2; ],f[],d[][],num[][],tmp[],s[] ...

  3. 编译失败,无法安装APK

    编译失败,无法安装APK. 把libs目录中,全部内容清空,再重新编译就可以了. 应该是有些组件有冲突的原因! -------------------------------------------- ...

  4. Selenium对浏览器支持的版本【2019/10/25更新】

    最新的selenium与几种常用浏览器的版本兼容情况:(以下驱动,点击直接跳转官方下载地址) 尽量选择最新版本-1的浏览器,比如最新的是60,那就使用59.(建议Chrome更新至72+版本.Fire ...

  5. Alpha总体规划 & 任务分解

    目录 Alpha阶段项目目标 任务拆解和优先级 总体规划 Alpha-1任务分配 Alpha-2任务分配 Alpha阶段项目目标 初步实现北航社团小程序: 北航社团小程序基础功能(优先级中的高两级,即 ...

  6. Oracle复习思路

    目录 Oracle复习 题型 复习大纲 附录 SQL题目一 SQL题目二 SQL题目三 SQL题目四 SQL题目五 SQL题目六 Oracle复习 题型 选择题15题 每题2分,共30分 判断题10题 ...

  7. 【转载】 《Human-level concept learning through probabilistic program induction》阅读笔记

    原文地址: https://blog.csdn.net/ln1996/article/details/78459060 --------------------- 作者:lnn_csdn 来源:CSD ...

  8. Mqtt paho 回调函数触发机制跟踪

    Python Mqtt paho 回调函数触发机制跟踪,我使用的是 buildroot 里面的 mqtt paho , 代码在 ''' buildroot-2017.02.8/output/build ...

  9. [c++] Sequence Containers

    写在前面 C++ Standard Library For efficiency reasons, STL is not object-oriented: Makes little use of in ...

  10. 解决python写入mysql中datetime类型遇到的问题

    解决python写入mysql中datetime类型遇到的问题 刚开始使用python,还不太熟练,遇到一个datetime数据类型的问题: 在mysql数据库中,有一个datetime类型的字段用于 ...