JAVA 文件heapdump文件解析

1,获取方式

springboot 日志分析获取 http://localhost/api/actuator/heapdump

(该日志文件,会泄露数据库账号密码等敏感信息,不能开通外网访问权限)

2,文件解析方式

方式一

java 自带命令

命令:jhat 文件名

该方式默认映射7000端口,使用浏览器打开:http://localhost:7000/
方式二

java 自带命令

命令:jvisualvm

该方式会打开一个图形界面。

文件 -> 装入 -> 【文件类型:堆 Dump】

注:工具 -> 插件 -> OQL Syntax Support。 可以安装此插件辅助查询

查询命令:select s.value.toString() from java.util.Hashtable$Entry s where /password/.test(s.key.toString())
方式三

第三方工具

heapdump_tool

usage:> java -jar heapdump_tool.jar heapdump

查询方式:

  1. 关键词 例如 password

  2. 字符长度 len=10 获取长度为10的所有key或者value值

  3. 按顺序获取 num=1-100 获取顺序1-100的字符

  4. class模糊搜索 class=xxx 获取class的instance数据信息

  5. id查询 id=0xaaaaa 获取id为0xaaaaa的class或者object数据信息

  6. re正则查询 re=xxx 自定义正则查询数据信息

获取url,file,ip

shirokey 获取shirokey的值

geturl 获取所有字符串中的url

getfile 获取所有字符串中的文件路径文件名

getip 获取所有字符串中的ip

默认不输出查询结果非key-value格式的数据,需要获取所有值,输入all=true,all=false取消显示所有值。

相关推荐
prinrf('千寻)2 分钟前
MyBatis-Plus 的 updateById 方法不更新 null 值属性的问题
java·开发语言·mybatis
老华带你飞8 分钟前
实习记录小程序|基于SSM+Vue的实习记录小程序设计与实现(源码+数据库+文档)
java·数据库·spring boot·小程序·论文·毕设·实习记录小程序
在未来等你36 分钟前
互联网大厂Java求职面试:AI与大模型应用集成及云原生挑战
java·微服务·ai·kubernetes·大模型·embedding·spring ai
my_styles42 分钟前
docker-compose部署项目(springboot服务)以及基础环境(mysql、redis等)ruoyi-ry
spring boot·redis·后端·mysql·spring cloud·docker·容器
源码技术栈1 小时前
SaaS基于云计算、大数据的Java云HIS平台信息化系统源码
java·大数据·云计算·云his·his系统·云医院·区域his
编程、小哥哥1 小时前
互联网大厂Java面试:从Spring Boot到微服务架构的技术深挖
java·spring boot·redis·微服务·prometheus·面试技巧
揽你·入怀1 小时前
数据结构:ArrayList简单实现与常见操作实例详解
java·开发语言
okok__TXF1 小时前
SpringBoot3+AI
java·人工智能·spring
AA-代码批发V哥1 小时前
Math工具类全面指南
java·开发语言·数学建模
16Miku2 小时前
基于SpringAI的电商客服智能体
spring·ai