栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

阿里开源的Java诊断工具——Arthas

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

阿里开源的Java诊断工具——Arthas

文章目录
  • 1 问题背景
  • 2 前言
  • 3 Arthas有什么作用
  • 4 入门小实践
  • 5 SpringBoot应用、Arthas、Arthas Tunnel Server之间的关系

1 问题背景

线上生产环境常常遇到异常无法定位,用户数据有问题无法在线上生产环境debug,无法得知方法的返回结果,笔者常遇到这些情况,因此研究阿里开源的Java诊断工具——Arthas。Arthas不仅仅是进行线上debug,还能查看jvm情况,类加载等等。

2 前言

Arthas有很多功能以及使用场景,笔者仅研究目前对笔者最有用的功能,就是无需通过日志打印(传统方案是打印日志,查看入参、出参)进行线上debug。

3 Arthas有什么作用

官方文档介绍如下:

4 入门小实践

花十来分钟访问在线快速入门Arthas看看Arthas是怎么玩的。

5 SpringBoot应用、Arthas、Arthas Tunnel Server之间的关系

从前面的入门小实践可以知道,他们的关系如下:


我们通过启动一个Arthas应用,使用控制台命令与SpringBoot应用A交互。

但是在流式计算里,Java进程(即SpringBoot应用)可以是在不同的机器启动的,想要使用Arthas去诊断会比较麻烦,因为用户通常没有机器的权限(即无法在机器上面启动一个Arthas应用),即使登陆上机器也分不清是哪个Java进程。

因此基于以上的情况,就有了Arthas Tunnel Server,其与SpringBoot应用交互的关系如下(图片不清楚可右击“在新标签页打开”):


引入的arthas-spring-boot-starter依赖,使得SpringBoot应用能成为一个Arthas Tunnel Client角色,每一个Client都有属于自己的agent-id,Arthas Tunnel Server端管理多个Client。用户在浏览器输入arthas的命令行与client交互。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/322300.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号