Springboot集成Javamelody
JavaMelody的目标是监视QA和生产环境中的Java或Java EE应用服务器。它不是模拟用户请求的工具,而是根据用户对应用程序的使用情况来衡量和计算应用程序实际操作的统计信息的工具。JavaMelody主要基于请求统计和演化图。
它允许改进QA和生产中的应用程序,并有助于:
给出关于平均响应时间和执行次数的事实
在趋势不好的时候,在问题变得太严重之前做出决定
基于更有限的响应时间进行优化
找到响应时间的根本原因
验证优化后的实际改进
详细介绍请参考https://github.com/javamelody/javamelody/wiki/UserGuide
方式一、使用javamelody的springboot starter
<dependency><groupId>net.bull.javamelody</groupId><artifactId>javamelody-spring-boot-starter</artifactId><version>1.85.0</version></dependency>
在application.yml文件中配置属性
javamelody:# 启用JavaMelody自动配置(可选,默认值:true)enabled: true# 从监控中排除数据源名称(可选,逗号分隔)excluded-datasources: secretSource,topSecretSource# 启用Spring服务和控制器的监控(可选,默认:true)spring-monitoring-enabled: true# 初始化JavaMelody参数(可选)# 参见: https://github.com/javamelody/javamelody/wiki/UserGuide#6-optional-parametersinit-parameters:# 记录HTTP请求:log: true# 从监控中排除图像,css,字体和js url:#url-exclude-pattern: (/webjars/.*|/css/.*|/images/.*|/fonts/.*|/js/.*)# 聚合HTTP请求中的数字:#http-transform-pattern: \d+# 添加基本权限:authorized-users: admin:123456# 更改默认存储目录:#storage-directory: /tmp/javamelody# 修改默认的"/monitoring"路径:monitoring-path: /jpa/monitoring
方式二、使用javamelody原生的包
<dependency><groupId>net.bull.javamelody</groupId><artifactId>javamelody-core</artifactId><version>1.85.0</version></dependency>
编写配置类注入bean
import net.bull.javamelody.MonitoringFilter;
import net.bull.javamelody.SessionListener;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletListenerRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.annotation.Order;import java.util.HashMap;
import java.util.Map;@Configuration
public class JavaMelodyConfig {/*** 配置javamelody监控* spring boot会按照order值的大小,从小到大的顺序来依次过滤*/@Bean@Order(Integer.MAX_VALUE-1)public FilterRegistrationBean<MonitoringFilter> monitoringFilter() {Map<String, String> initParameters = new HashMap<>();//设置账号密码initParameters.put("authorized-users", "admin:123456");//修改默认路径initParameters.put("monitoring-path", "/config/monitoring");FilterRegistrationBean<MonitoringFilter> registration = new FilterRegistrationBean<>();registration.setFilter(new MonitoringFilter());registration.addUrlPatterns("/*");registration.setName("monitoring");registration.setInitParameters(initParameters);return registration;}/*** 配置javamelody监听器sessionListener*/@Beanpublic ServletListenerRegistrationBean<SessionListener> servletListenerRegistrationBean() {ServletListenerRegistrationBean<SessionListener> slrBean = new ServletListenerRegistrationBean<>();slrBean.setListener(new SessionListener());return slrBean;}
}
以方式二集成的结果为例,启动服务后访问http://localhost:8081/config/monitoring
端口是你当前项目的server.port端口,如果有配置servlet.context-path还需加上配置的路径

相关文章:
Springboot集成Javamelody
JavaMelody的目标是监视QA和生产环境中的Java或Java EE应用服务器。它不是模拟用户请求的工具,而是根据用户对应用程序的使用情况来衡量和计算应用程序实际操作的统计信息的工具。JavaMelody主要基于请求统计和演化图。 它允许改进QA和生产中的应用程序,…...
如何将 h5 页面快速转换成微信小程序
Hello各位朋友们大家新的一月好呀!我是咕噜铁蛋!我知道在小程序开发中,有时候需要将H5页面转换成微信小程序页面。这样可以将原本的网页内容适配到小程序中,让用户能够更方便地访问和使用。在本文中,我将分享如何快速将…...
在Vue的模块开发中使用GPT的体验及总结
我这一周都在忙着实现一个页面,这个页面是通过vue基于element-ui来实现的。在这个过程中,我把页面拆分成多个组件,而组件的生成是通过Chat-GPT3来实现的。 这又是一次使用AI来协同开发的体验,觉得有必要总结一下: 遵循…...
Java常见算法题解析面试题(中)
11.判断101-200之间有多少个素数,并输出所有素数。【重点】 程序分析:判断素数的方法,用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi { publi…...
提升网站性能的秘诀:为什么Nginx是高效服务器的代名词?
在这个信息爆炸的时代,每当你在浏览器中输入一个网址,背后都有一个强大的服务器在默默地工作。而在这些服务器中,有一个名字你可能听说过无数次——Nginx。今天,就让我们一起探索这个神奇的工具。 一、Nginx是什么 Nginx&#x…...
[Python图像处理] 使用OpenCV创建深度图
使用OpenCV创建深度图 双目视觉创建深度图相关链接双目视觉 在传统的立体视觉中,两个摄像机彼此水平移动,用于获得场景上的两个不同视图(作为立体图像),就像人类的双目视觉系统: 通过比较这两个图像,可以以视差的形式获得相对深度信息,该视差编码对应图像点的水平坐标的…...
vue+element 换肤功能
1.首先建深色和浅色两个主题样式变量样式表,样式表名和按钮中传入的值一样,本例中起名为default.scss和dark.scss 2.在data中定义主题变量名 zTheme:‘defalut’,默认引用defalut.scss, 在点击按钮时切换引用的样式表,达到换肤效果…...
python魔法函数[全面]
1、init 用于初始化对象的属性和状态 当创建一个对象时,Python会自动调用该对象的__init__方法。 这个方法用于初始化对象的属性和状态,是对象创建过程中的一个重要环节 2、new # 通常我们不需要重写__new__方法,除非我们正在进行一些非常…...
python实现贪吃蛇小游戏(附源码)
文章目录 导入所需的模块坐标主游戏循环模块得分 贪吃蛇小游戏,那个曾经陪伴着00后和90后度过无数欢笑时光的熟悉身影,仿佛是一把打开时光之门的钥匙。它不仅是游戏世界的经典之一,更是我们童年岁月中不可或缺的一部分,一个承载回…...
爬虫学习笔记-Cookie登录古诗文网
1.导包请求 import requests 2.获取古诗文网登录接口 url https://so.gushiwen.cn/user/login.aspxfromhttp%3a%2f%2fso.gushiwen.cn%2fuser%2fcollect.aspx # 请求头 headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like …...
Linux网络状态查看与防火墙管理
网络状态查看 netstat [选项] Netstat是一款命令行工具,用于显示Linux系统中网络的状态信息,可以显示网络连接、路由表、连接的数据统计等信息。 使用 选项 -a:显示所有选项,包括监听和未监听的端口。 -t:仅显示tc…...
VxTerm:C++ MFC,在工具栏中增加Edit/ComboBox等组件,打造一个地址栏/搜索栏功能
VxTerm软件可以在本站链接下载:唯一国产化SSH工具下载,单文件纯绿色不需要安装,替代SecureCRT 在软件的主界面中,增加了一个地址栏功能。 本人的文章内容都是经本人亲自实现并验证成功的干货,关注我,互相交…...
【Android】屏幕锁
屏幕锁,就是锁住屏幕不让用户误触摸,从开发者的角度看就是不响应用户的点击事件。 屏幕锁界面 可以自己创建一个布局文件,或者直接创建一个View(例如ImageView)。 参数LayoutParams mLayoutParams new LayoutParam…...
springCloud gateway 防止XSS漏洞
springCloud gateway 防止XSS漏洞 一.XSS(跨站脚本)漏洞详解1.XSS的原理和分类2.XSS漏洞的危害3.XSS的防御 二.Java开发中防范XSS跨站脚本攻击的思路三.相关代码(适用于spring cloud gateway)1.CacheBodyGlobalFilter.java2.XssRequestGlobalFilter.java…...
美赛摘要写作重点
摘要是论文最重要的部分。竞赛要求每篇论文的首页为摘要页,如果摘要写得不好,即使有好的模型和解答,论文也将难以通过鉴别阶段的初审而进入下一阶段。 根据MCM的竞赛规则,摘要应该包含以下内容: 赛题重述与阐明&#…...
RUST笔记: 动态链接库的创建和使用
生成动态链接库 // https://github.com/vvvm23/funny-shapes # 项目元信息 [package] name "funnyshapes" # 项目名称 version "0.1.0" # 版本号 edition "2021" # Rust语言版本# 更多配置信息可查阅࿱…...
「阿里云」幻兽帕鲁个人服务器已上线,3分钟快速搭建
基于阿里云搭建幻兽帕鲁服务器方法,1到2分钟部署完成,稳定运行无卡顿,阿里云服务器网aliyunfuwuqi.com分享保姆级手把手教程,基于阿里云计算巢、云服务器或无影云桌面都可以: 基于阿里云幻兽帕鲁服务器创建教程 基于…...
@ 代码随想录算法训练营第6周(C语言)|Day36(贪心)
代码随想录算法训练营第6周(C语言)|Day36(贪心) Day36、贪心(包含题目 ● 435. 无重叠区间 ● 763.划分字母区间 ● 56. 合并区间 ) 435. 无重叠区间 题目描述 给定一个区间的集合,找到需要…...
数组打印杨辉三角
签名:但行好事,莫问前程。 文章目录 前言一、杨辉三角的概念二、二维数组打印杨辉三角1、创建二维数组2、使用for循环,初始化外层元素3、给数组赋值3.1给数组每行首末元素赋值为13.1给数组每行非首末元素赋值 三、杨辉三角全代码总结 前言 记…...
【操作系统·考研】文件系统
1.概述 文件系统(File System)提供高效和便捷的磁盘访问,以便允许存储、定位、提取数据。 严格来说,VFS并不是一种实际的FS,它只存在于内存中,不存在与任何外存空间中。 VFS在系统启动时建立,在系统关闭时消亡。 2.结…...
跨平台B站视频下载终极指南:如何用BilibiliDown轻松搞定离线观看
跨平台B站视频下载终极指南:如何用BilibiliDown轻松搞定离线观看 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh…...
终极小说阅读器:Uncle小说如何一站式解决你的数字阅读需求
终极小说阅读器:Uncle小说如何一站式解决你的数字阅读需求 【免费下载链接】uncle-novel 📖 Uncle小说,PC版,一个全网小说下载器及阅读器,目录解析与书源结合,支持有声小说与文本小说,可下载mob…...
VideoDownloadHelper:打破视频下载壁垒的智能浏览器插件
VideoDownloadHelper:打破视频下载壁垒的智能浏览器插件 【免费下载链接】VideoDownloadHelper Chrome Extension to Help Download Video for Some Video Sites. 项目地址: https://gitcode.com/gh_mirrors/vi/VideoDownloadHelper 在信息爆炸的时代&#x…...
智能物流系统的技术难点
根据国际供应链与智能制造专家的普遍共识,智能物流系统(Smart Logistics System)作为“AI制造”的外延与闭环,其技术难点已不再是简单的“扫码搬运”,而是如何处理极高动态性、超大规模和强不确定性的复杂场景。核心技…...
如何用OneMore插件彻底改变你的OneNote笔记体验:终极效率提升指南
如何用OneMore插件彻底改变你的OneNote笔记体验:终极效率提升指南 【免费下载链接】OneMore A OneNote add-in with simple, yet powerful and useful features 项目地址: https://gitcode.com/gh_mirrors/on/OneMore 你是否曾经在OneNote中花费大量时间调整…...
长期在ubuntu开发中使用taotoken api感受到的稳定性与支持体验
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 长期在ubuntu开发中使用taotoken api感受到的稳定性与支持体验 作为一名在Ubuntu环境下进行日常开发的工程师,我的项目…...
告别手动抢号烦恼:Python健康160自动挂号完整指南
告别手动抢号烦恼:Python健康160自动挂号完整指南 【免费下载链接】health160 健康160自动挂号脚本,用魔法对抗魔法,禁止商用🖖 项目地址: https://gitcode.com/gh_mirrors/he/health160 还在为每次打开医院预约网站都看到…...
Win-Vind终极指南:用Vim风格高效操作Windows的完整方案
Win-Vind终极指南:用Vim风格高效操作Windows的完整方案 【免费下载链接】win-vind You can operate Windows with key bindings like Vim. 项目地址: https://gitcode.com/gh_mirrors/wi/win-vind 还在为Windows操作效率低下而烦恼吗?想要在Windo…...
三步搞定Windows和Office永久激活:KMS智能激活终极指南
三步搞定Windows和Office永久激活:KMS智能激活终极指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统频繁弹出激活提示而烦恼吗?Office文档突然变成只…...
【SpringBoot 3.x 第202节】微服务拆分方法论:什么时候该拆,什么时候不该拆?
🏆本文收录于《滚雪球学SpringBoot 3.x》,专门攻坚指数提升,本年度国内最系统最专业最详细(永久更新)。 该专栏致力打造最硬核 SpringBoot3 从零基础到进阶系列学习内容,🚀均为全网独家首发…...
