当新的世界出现,请立即向他奔去
上一章简单介绍了Spring Boot Actuator详解(四十八), 如果没有看过,请观看上一章
一. JavaMelody
一.一 什么是 Java Melody
JavaMelody是一个方便的Java或JavaEE Web 应用程序监控工具。
它允许自动存储由 Web 应用程序的实际操作产生的统计数据和错误,以供以后评估。
JavaMelody 很容易集成到应用程序本身中,因此无需安装或修改 Web 服务器配置。
需要注意的是,JavaMelody 工具并不是用来产生数据的,它的功能是对应用程序的实际运行进行测量和统计。
它主要基于用户自己使用应用程序的请求统计和演化图的管理。如您所见,它主要用于质量或生产环境。
JavaMelody 在开源许可下分发,可以安全地在生产环境中的应用程序中使用。
JavaMelody 很容易集成到大多数应用程序中(不需要配置文件或数据库)并且相当轻量级。
JavaMelody 可以安全地激活,因为它在工具和我们的应用程序之间创建了一个几乎透明的层。
它不会在性能方面产生任何类型的下降。
一.二 JavaMelody 为我们提供了哪些信息?
正如我们在介绍中所讨论的,JavaMelody 是一种工具,
用于根据用户的使用情况测量和计算有关应用程序实际性能的统计信息。
它允许优化应用程序,有助于:
- 获取有关平均响应时间和执行次数的数据。
- 在趋势不好时做出决定,避免出现重大问题。
- 找出响应时间最有限的原因。
- 验证优化产生的实际改进。
统计图表:
包含的图表显示了以下指标随时间的演变:
- http 查询、sql 查询、jsf 或 strut 操作、jsf 页面或业务外观方法产生的执行次数、平均执行时间和错误百分比。
- java内存
- 中央处理器 Java。
- 用户会话数和 jdbc 连接数。
指标统计:
预定义计数器(http 查询、sql 查询、jsf 或 strut 操作、jsf 页面或业务外观方法)的统计信息包含在以下信息中:
执行次数、平均执行时间、CPU 时间和错误百分比的摘要。
这些请求超过某个阈值的时间百分比。
对于每个 http 请求,它指示响应流的大小、平均 sql 执行次数和平均 sql 时间。
系统信息:
二. 与老系统整合,添加监控
二.一 pom.xml 添加依赖
<!--添加 javamelody监控-->
<dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId>javamelody-spring-boot-starter</artifactId>
<version>1.91.0</version>
</dependency>
二.二 application.yml 配置
# javamelody 监控
javamelody:
# 启用JavaMelody自动配置(可选,默认值:true)
enabled: true
# 要从监视中排除的数据源名称(可选,以逗号分隔)
# excluded-datasources: secretSource,topSecretSource
# 启用对Spring服务和控制器的监视(可选,默认值:true)
spring-monitoring-enabled: true
# JavaMelody的初始化参数(可选)
# See: https://github.com/javamelody/javamelody/wiki/UserGuide#6-optional-parameters
init-parameters:
# 记录http请求
log: true
# 从监视中排除图像,css,字体和js网址
url-exclude-pattern: (/webjars/.*|/css/.*|/images/.*|/fonts/.*|/js/.*)
# 汇总http请求中的数字
#http-transform-pattern: \d+
# 添加基本身份验证,没有生效
# authorized-users: admin:{SHA-256}6ca13d52ca70c883e0f0bb101e425a89e8624de51db2d2392593af6a84118090
# authorized-users: admin:abc123
# 更改默认存储目录:
#storage-directory: /tmp/javamelody
# 更改默认的“ / monitoring”路径:
#monitoring-path: /admin/performance
二.三 启动验证
端口是 8082 , 项目路径为 /
http://localhost:8082/monitoring 查看监控
二.四 相应配置
二.四.一 修改访问路径
init-parameters:
# 记录http请求
log: true
# 从监视中排除图像,css,字体和js网址
url-exclude-pattern: (/webjars/.*|/css/.*|/images/.*|/fonts/.*|/js/.*)
# 汇总http请求中的数字
#http-transform-pattern: \d+
# 更改默认的“ / monitoring”路径:
monitoring-path: /admin/performance
之前的链接会变成 404
采用新地址进行访问:
http://localhost:8082/admin/performance
二.五 在放置到 linux 遇到的问题
二.五.一 与 Spring Security 关联时
二.五.二 监控资源后端报错 500
发现,没有字体
解决方案: 安装 FontConfig 组件
yum install fontconfig
fc-cache --force
重启 Java 应用, 这个时候就会展示出来了, 但会发现,图片是乱码的.
二.五.三 解决图片乱码问题
参考教程: https://blog.csdn.net/Darling_qi/article/details/120485688
主要原因是 Linux 系统不支持中文
- 安装 Linux 字体程序
yum -y install fontconfig
- 查看已经安装的字体 和支持中文的字体
查看已安装的字体:fc-list
查看已安装的中文字体:fc-list :lang=zh
- 安装中文字体
在 /usr/share/fonts 目录下处理, 如果没有的话,创建该目录
mkdir -p /usr/share/fonts
- 引入字体文件
在 windows 系统中, 找到 msyh.ttc和msyhbd.ttc 2个文件
直接将字体文件上传到该目录下即可
- 安装字体索引
yum install mkfontscale
- 生成字体索引
mkfontscale
- 验证结果
重启 Java 应用,发现中文字体是正常的,乱码问题解决。
谢谢您的观看,如果喜欢,请关注我,再次感谢 !!!