Arthas的使用

Arthas的部署与使用 Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。 阅读详情

1.简介

官网:https://arthas.aliyun.com/zh-cn/

Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。

当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:

  1. 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?

  2. 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?

  3. 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?

  4. 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!

  5. 是否有一个全局视角来查看系统的运行状况?

  6. 有什么办法可以监控到JVM的实时运行状态?

  7. 怎么快速定位应用的热点,生成火焰图?

  8. 怎样直接从JVM内查找某个类的实例?

Arthas支持JDK 6+,支持Linux/Mac/Windows,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。

以上是官网的介绍。

本人是因为一个测试的一个bug认识了Arthas。前端说调用接口了,但是后端却没有日志打印,怀疑是前端根本没调用。为了证明错误到底在谁,使用Arthas去找内奸。

2.安装与使用

1.下载

curl -O https://arthas.aliyun.com/arthas-boot.jar

使用该命令在当前目录下载Arthas的jar包:arthas-boot.jar

2.使用

启动方式:java -jar arthas-boot.jar

注意启动前需要服务器有运行状态的Java服务(没有服务运行的话Arthas去监听谁呢?)。

启动成功后,Arthas会让你选择需要监听的服务,按下需要监听服务对应的数字键,然后回车即可进入Arthas的命令行界面。

常用命令:

watch:让你能方便的观察到指定方法的调用情况。能观察到的范围为:返回值、抛出异常、入参,通过编写 OGNL 表达式进行对应变量的查看。

例子:监听TestController下test()方法的出入参数

watch com.example.demo.controller.TestController test "{params,target,returnObj}" -s -b -x:3

以上,更多使用方式参考官方文档即可。

(性能工具)arthas Java诊断工具 Arthas到底是什么 Arthas 是Alibaba开源的Java诊断工具,采用命令行交互模式,提供了丰富的功能,是排查jvm相关问题的利器。 下面先列举一下它能做的一些事情: 提供性能看板,包括线程、cpu、内存等信息,并且会定时的刷新。 根据各种条件查看线程快照。比如找出cpu占用率最高的n个线程等 输出jvm的各种信息,如gc算法、jdk版本、ClassPath等 查看/设置sysprop和sysenv 查看某个类的静态属性,也可以通过ognl语法执行一些语句 查看已加载的类的详细信息,比如这个类 阅读详情

相关推荐

【arthas诊断线上java应用】1.下载arthas 2.常用arthas命令 3.jad快速查看class内容 4.stop退出arthas

想起来之前的面试,有一次问到:假如线上出现cpu飙升,和内存问题,如何排查?思考:可以看出来,arthas对java应用没有任何入侵。1)下载arthas。

focus-unchanged-thing 672

Arthas查看已加载类的源码(jad)

格式jad全路径类型;

一起coding,一起嗨。 8152

阿里云Arthas使用——通过watch命令查看类的返回值 & 捞数据出来

本篇博客介绍如何通过watch命令查看调用方法的输出参数。

Arya的博客,专注后端领域 3712

arthas使用

Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。dockfile文件。

Filwaod 1243

arthas idea plugin 插件,arthas 使用更加丝滑起来

一、背景 目前Arthas 官方的工具还不够足够的简单,需要记住一些命令,特别是一些扩展性特别强的高级语法,比如ognl获取spring context 为所欲为,watch、trace 不够简单,需要构造一些命令工具的信息,因此只需要一个能够简单处理字符串信息的插件即可使用。当在处理线上问题的时候需要最快速、最便捷的命令,因此Idea arthas 插件还是有存在的意义和价值的。 二、支...

汪小哥 2万+

Arthas 使用详解

Arthas 使用详解

congge 1万+

Arthas使用教程

arthas对原本进程的影响,本质上arthas对进程的影响是很小的,但是对于一些命令的执行我们要额外关注下,比如trace的时候尽量不要一次性监听多个类。其中每个方法前面的百分号是这个方法执行耗时占了整个链路的百分比,后面是相关具体耗时,可以看到上图中setPreAndAvailNum耗时是比较久的,占用了6ms多,由于arthas无法动态监听下一级方法(新版本已经提供,但是感觉效果一般,具体可以查看相关文档),所以需要我们手动添加该方法的监听命令。其它的使用可以参考文档中的相关参数。

Evan 1667

Arthas使用教程(8大分类)

1、基础命令。2、JVM相关。3、类与类加载器。4、option全局选项。5、项目中使用案例。

lydms的博客 11万+

arthas 使用教程

arthas 使用教程代码演示

小凯的博客 1722

ESP32 LVGL开发板例程使用记录:自制常用汉字字库(二)

1、将下载的文件移入工程文件中 ,路径为项目文件中 ”......\lib\lvgl\src\font“文件夹下。3、修改字库配置文件,文件名为lv_conf.h中的内容,向其中加入下面内容(位置可搜索注释块来找到地方)修改完成可以编译试试,看是否成功,如字库较大时编译出错,请使能:LV_FONT_FMT_TXT_LARGE。2、打开此文件,修改包含头文件的路径,不然会报错,修改方法可对照自己库中其他字库文件中的包含路径。导入完成后在VSCode工程中可以查看到此文件。上次说完了如何制作 字库.c 文件。

qq_43279097的博客 1960

TSMaster二次开发实战:如何用Python搞定CAN/CANFD事件回调(附完整代码)

本文详细介绍了如何利用Python进行TSMaster二次开发,实现CAN/CANFD事件回调功能。通过实战代码演示,讲解了预发送与后处理回调的核心区别、注册流程、资源管理及性能优化技巧,帮助工程师高效构建自动化测试与数据监控应用。

star的博客 672

Windows下Arthas的简单使用

前言 前面我们就已经说了怎么安装Arthas了,那今天我们就来聊一下Arthas的使用 一、准备 我们需要准备一个java程序,启动之后不能停止的,那我就用一个简单的死循环程序 下面是一个死循环程序,一直输出a的值 public class test { public static void main(String[] args) { int a = 1; while (a==1){ System.out.println(a);

DevelopmentStack的博客 8276

人工智能,不止于模型:四步实现完整工作流

工程师越来越多地致力于将人工智能 (AI) 集成到自己的项目和应用中,同时不断着力提升自己的 AI 技能。面对 AI 问题,工程师首先要了解什么是 AI,以及如何将它纳入当前工作流,这看似简单,实则未必容易。在 Google 中搜索“什么是 AI?”会得到数百万条结果,包括不同程度的技术和相关信息。那么,对工程师而言,AI 意味着什么?人们对 AI 的关注主要集中在 AI 模型上,受此影响,工程师会迅速投入 AI 建模的研究。

r1832644594的博客 2821

docker中怎么使用Arthas

docker如何使用Arthas(看这篇就够了!!!)

可乐要加冰!!! 1992

从轴承润滑到代码实现:手把手教你用Python FDM求解稳态雷诺方程

本文详细介绍了如何用Python FDM(有限差分法)求解稳态雷诺方程,从轴承润滑理论到代码实现的全过程。通过构建无量纲方程、有限差分格式和迭代求解算法,开发者可以快速实现专业级润滑分析,应用于涡轮发电机、汽车曲轴等场景。文章还提供了完整的Python代码示例和结果可视化方法,帮助工程师优化轴承设计。

weixin_28689507的博客 122

Vue3+codemirror6实现公式(规则)编辑器

vue3+codemirror6+ts实现公式编辑器,可以插入标签、公式,也有补全提示

小阮的笔记本 5053

arthas基础命令

arthas基础命令

兮动人 1966

SAP S4 HANA 新资产会计中的平行分类账估值

在资产会计中,我们可以设置使用折旧区域的平行分类账会计 我们需要根据涉及的会计原则定义折旧区域,在我们的方案中,公司 FR01 是一家国际集团的当地分支机构,公司 FR01 需要按照集团会计准则 IFRS 和当地 GAAP 会计准则报告财务报表。过账到 LG 会计原则(分类帐 2L)-->分类账 2L的 150 欧元损失 -->在 IFRS 折旧区域,我们有 100 欧元的收益,在 LG 折旧区域,我们有 150 欧元的损失,使用平行分类账 0L 和 2L,我们能够根据不同的会计原则进行平行估值。

yanzibing99的博客 1332

docker中怎么使用arthas

大部分的项目都运行在了docker容器中了, 那怎么用arthas呢? 1:首先拷贝arthas包下来: wget https://alibaba.github.io/arthas/arthas-boot.jar 2:其次选中你需要查看的容器id: dockerps 3:拷贝arthas程序包到容器目录下: [root@localhost java]# docker cp arthas-boot.jar 50e46094fa16:/appdata 当前前提是你先进入这个容器,.

u010953880的专栏 1549

西电微机系统课程设计步进电机开环控制系统

** 微机系统与应用课程设计 课题二 步进电机开环控制系统设计** 一、程设计目的 掌握微机系统总线与各芯片管脚连接方法,提高接口扩展硬件电路的连接能力。 加深对 A/D 和并行接口芯片的工作方式和编程方法的理解。 搞懂步进电机的工作原理及控制方式,掌握开环控制系统的设计思路和实现方法。 二、课程设计的内容 手动调节电位器旋钮(0V~5V),通过 ADC0809 模拟输入水库水位 0 米~50...

qq_37015775的博客 4040

ENVI与Sarscape协同处理哨兵一号数据的完整流程解析

本文详细解析了利用ENVI与Sarscape软件协同处理哨兵一号(Sentinel-1)SAR数据的完整工作流程。从环境搭建、数据导入与裁剪,到核心的DEM辅助多时相配准、斑点噪声滤波,再到最终的地理编码与辐射定标,提供了标准化的操作指南与实用技巧,帮助用户高效地将原始雷达数据转化为可用于分析的地理编码产品。

weixin_29251131的博客 339

Arthas

文章目录Arthas启动/重进入启动常见问题生产环境修改代码、更新场景实时修改生产环境日志级别场景便捷地修改JVM参数其他命令更好用的工具 Arthas 启动/重进入 启动 # 一般arthas的jar包下载都会放在默认当前位置下,如果当前为root角色 # cd ~ # cd .arthas/lib/3.4.3/arthas # 需要管理权限才可以启动,也可以进入 cd .arthas/lib/版本/arthas,再执行 sudo java -jar arthas-boot.jar 重进入 重进

本博客已迁移到 https://jacksparrow414.com 4982

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Arthas简单使用

通过指定类名,可以查看该类的详细加载信息,包括类加载器、类路径等。查看当前线程的状态,包括线程的 CPU 使用率、线程堆栈信息等。实时展示 JVM 的关键指标,如堆内存、线程、类加载等。:显示方法的详细信息,包括注解、参数类型、返回类型等。:要监控的表达式,可以是方法的入参、出参、执行时间等。用于监控方法的执行情况,包括方法的调用次数、执行时间等。查看 JVM 的详细信息,包括系统属性、环境变量等。监控方法的执行情况,包括方法的入参、返回值、异常等。排查方法的输入输出问题,如参数异常、返回值异常等。

qq_50857462的博客 3431

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Arthas工具快速使用

Arthas是阿里巴巴开源的Java诊断工具,支持实时监控Java应用运行状态而无需重启或修改代码。本文介绍了Arthas的基础使用:通过java-jar命令启动并连接目标进程;常用命令包括dashboard查看系统状态、jvm查看虚拟机信息、trace追踪方法调用耗时等;特别演示了如何用trace命令监控Spring接口性能,并解析了参数含义。文章强调Arthas"无侵入"的核心价值,能有效解决线上问题排查、性能优化等场景需求,同时建议结合官方文档探索更多高级功能。

屹奕的博客 1163

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: nginx配置负载均衡后总是访问同一台服务器
下一篇: 秋老虎的灼热——elk流程打通
Yuwen_forJava
博客等级 码龄9年 28粉丝 90原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值