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取消显示所有值。

相关推荐
栈与堆几秒前
LeetCode-88-合并两个有序数组
java·开发语言·数据结构·python·算法·leetcode·rust
董世昌413 分钟前
添加、删除、替换、插入元素的全方法指南
java·开发语言·前端
ZePingPingZe4 分钟前
SpringMVC与Servlet容器[Tomcat]
spring boot·servlet·tomcat
小当家.1059 分钟前
JVM八股详解(上部):核心原理与内存管理
java·jvm·学习·面试
heartbeat..9 分钟前
Spring 声明式事务:原理、使用及失效场景详解
java·spring·面试·事务
寻星探路10 分钟前
【Python 全栈测开之路】Python 基础语法精讲(三):函数、容器类型与文件处理
java·开发语言·c++·人工智能·python·ai·c#
xiaolyuh12312 分钟前
【XXL-JOB】执行器 Netty服务 & Tomcat 进程+资源共用详解
java·tomcat
jasnet_u15 分钟前
SpringCloudAlibaba的web微服务快速搭建
java·springboot·springlcoud
BD_Marathon17 分钟前
启动tomcat报错,80 端口已经被其他程序占用
java·tomcat
计算机毕设指导618 分钟前
基于微信小程序的精致护肤购物系统【源码文末联系】
java·spring boot·微信小程序·小程序·tomcat·maven·intellij-idea