arthas

简介: 本章节介绍JVM相关命令:查看线程堆栈、JVM信息、系统属性与环境变量,管理诊断选项、性能计数器及日志级别,支持动态修改配置,查看静态属性与MBean信息,并提供heap dump功能,助力Java应用诊断与调优。

3.jvm相关

  1. dashboard—当前系统的实时数据面板
    第二章节已说,这里不再赘述
  2. thread—查看当前 JVM 的线程堆栈信息
    第二章节已说,这里不再赘述
  3. jvm—查看当前 JVM 的信息
  4. sysprop—查看和修改JVM的系统属性
    4.1 查看全部
    4.2 查看指定属性
    4.3 修改单个属性
  5. sysenv—查看JVM的环境变量
    5.1 查看全部环境变量
    5.2 查看指定环境变量
  6. vmoption—查看和修改JVM里诊断相关的option
    6.1 查看全部option
    6.2 查看指定option
    6.3 更新指定option
  7. perfcounter—查看当前 JVM 的Perf Counter信息使用参考
    可以用-d参数打印更多信息:
    jdk9以上的应用
    如果没有打印出信息,应用在启动时,加下面的参数:
  8. logger—查看和修改logger
    8.1 查看所有logger信息
    从appenders的信息里,可以看到
    CONSOLE logger的target是System.out
    APPLICATION logger是RollingFileAppender,它的file是app.log
    ASYNC它的appenderRef是APPLICATION,即异步输出到文件里
    8.2 查看指定logger
    8.3 查看指定classloader的logger
    其中,classloader为上述8.1或8.2中返回的
    8.4 更新全局logger level
    8.5 更新指定classloader logger level
    默认情况下,logger命令会在SystemClassloader下执行,如果应用是传统的war应用,或者spring boot fat jar启动的应用,那么需要指定classloader。
    可以先用 sc -d yourClassName 来查看具体的 classloader hashcode,然后在更新level时指定classloader:
    8.6 查看没有appender的logger
    默认情况下,logger命令只打印有appender的logger的信息。如果想查看没有appender的logger的信息,可以加上参数--include-no-appender。
    注意,通常输出结果会很长
    Java
    运行代码
    复制代码
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    [arthas@2062]$ logger --include-no-appender
    name ROOT
    class ch.qos.logback.classic.Logger
    classLoader sun.misc.Launcher$AppClassLoader@2a139a55
    classLoaderHash 2a139a55
    level DEBUG
    effectiveLevel DEBUG
    additivity true
    codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
    appenders name CONSOLE

                                     class           ch.qos.logback.core.ConsoleAppender
                                     classLoader     sun.misc.Launcher$AppClassLoader@2a139a55
                                     classLoaderHash 2a139a55
                                     target          System.out
                                     name            APPLICATION
                                     class           ch.qos.logback.core.rolling.RollingFileAppender
                                     classLoader     sun.misc.Launcher$AppClassLoader@2a139a55
                                     classLoaderHash 2a139a55
                                     file            app.log
                                     name            ASYNC
                                     class           ch.qos.logback.classic.AsyncAppender
                                     classLoader     sun.misc.Launcher$AppClassLoader@2a139a55
                                     classLoaderHash 2a139a55
                                     appenderRef     [APPLICATION]
    

    name com
    class ch.qos.logback.classic.Logger
    classLoader sun.misc.Launcher$AppClassLoader@2a139a55
    classLoaderHash 2a139a55
    level null
    effectiveLevel DEBUG
    additivity true
    codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar

    name com.alibaba
    class ch.qos.logback.classic.Logger
    classLoader sun.misc.Launcher$AppClassLoader@2a139a55
    classLoaderHash 2a139a55
    level null
    effectiveLevel DEBUG
    additivity true
    codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
    ...

  9. getstatic—查看类的静态属性
    有需再更
  10. ognl—执行ognl表达式
    有需再更
  11. mbean—查看 Mbean 的信息
    有需再更
  12. heapdump—dump java heap, 类似jmap命令的heap dump功能
相关文章
|
9月前
|
Arthas 监控 Java
arthas 基础指令
Arthas简介:通过dashboard查看线程状态、CPU占用等;jad反编译类文件;thread分析线程堆栈及阻塞情况;watch监控方法执行耗时与参数;支持quit退出连接或stop彻底终止。适用于Java进程诊断,操作便捷,功能强大。(239字)
|
9月前
|
Arthas 监控 Java
arthas 安装
本教程介绍Arthas的安装与基础使用。需提前安装JDK并确保服务器有Java应用运行。下载arthas-boot.jar,上传Java应用(如Arthas-demo.jar),启动后通过`java -jar arthas-boot.jar`接入,选择对应进程即可监控。支持多Java进程管理,为后续深入使用奠定基础。(239字)
|
3月前
|
人工智能 Rust 监控
这 3 个开源小工具,帮你让 Coding Agent 少吃点 Token
今天我们就来分享 3 个有用的开源项目,专门帮你的 Coding Agent 整理“上下文”:让它少翻无关代码,少吞冗长日志,把 token 留给更关键的信息。
539 0
这 3 个开源小工具,帮你让 Coding Agent 少吃点 Token
|
9月前
|
运维 监控 Cloud Native
不是监控不行,是你观测得不够:聊聊新一代可观测性(Observability)的真相
不是监控不行,是你观测得不够:聊聊新一代可观测性(Observability)的真相
579 7
|
7月前
|
安全 Java API
将若依(RuoYi)框架从适配 Spring Boot 2 的版本升级到 Spring Boot 3
将若依(RuoYi)框架从适配 Spring Boot 2 的版本升级到 Spring Boot 3,这是一个涉及依赖、配置、API 兼容等多方面的系统性升级工作。
1317 6
|
10月前
|
数据采集 安全 数据可视化
2025年能源管理平台厂商综合推荐:哪些方案真正帮助企业实现能耗精细管控与成本下降?
在“双碳”与数字化转型背景下,树根科技能源管理平台凭借工业互联网底座、千种协议兼容、多系统融合能力,实现能耗精准监测与智能优化。覆盖钢铁、工程机械等行业,助力企业降本增效,实证节能显著,入选Gartner魔力象限,成为制造企业绿色智控优选方案。
525 0
|
Arthas 运维 监控
Arthas stack (输出当前方法被调用的调用路径)
Arthas stack (输出当前方法被调用的调用路径)
756 37
|
机器学习/深度学习 算法 计算机视觉
YOLOv11改进策略【SPPF】| SimSPPF,简化设计,提高计算效率
YOLOv11改进策略【SPPF】| SimSPPF,简化设计,提高计算效率
910 13
YOLOv11改进策略【SPPF】| SimSPPF,简化设计,提高计算效率
|
负载均衡 Nacos 数据库
【Nacos】配置管理、微服务配置拉取、实现配置热更新、多环境配置
【Nacos】配置管理、微服务配置拉取、实现配置热更新、多环境配置
1065 1