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
查询方式:
关键词 例如 password
字符长度 len=10 获取长度为10的所有key或者value值
按顺序获取 num=1-100 获取顺序1-100的字符
class模糊搜索 class=xxx 获取class的instance数据信息
id查询 id=0xaaaaa 获取id为0xaaaaa的class或者object数据信息
re正则查询 re=xxx 自定义正则查询数据信息
获取url,file,ip
shirokey 获取shirokey的值
geturl 获取所有字符串中的url
getfile 获取所有字符串中的文件路径文件名
getip 获取所有字符串中的ip
默认不输出查询结果非key-value格式的数据,需要获取所有值,输入all=true,all=false取消显示所有值。