<!DOCTYPE html>
<!-- [if IE 8]><html class="no - js lt - ie9" lang="zh - CN" > <![endif] -->
<!-- [if gt IE 8]><! --> < html class = "no-js" lang = "zh-CN" > <!-- <![endif] -->
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
< title > dashboard — Arthas 3.4.6 文档< / title >
< link rel = "shortcut icon" href = "_static/favicon.ico" / >
< script type = "text/javascript" src = "_static/js/modernizr.min.js" > < / script >
< script type = "text/javascript" id = "documentation_options" data-url_root = "./" src = "_static/documentation_options.js" > < / script >
< script type = "text/javascript" src = "_static/jquery.js" > < / script >
< script type = "text/javascript" src = "_static/underscore.js" > < / script >
< script type = "text/javascript" src = "_static/doctools.js" > < / script >
< script type = "text/javascript" src = "_static/language_data.js" > < / script >
< script type = "text/javascript" src = "_static/translations.js" > < / script >
< script type = "text/javascript" src = "_static/js/theme.js" > < / script >
< link rel = "stylesheet" href = "_static/css/theme.css" type = "text/css" / >
< link rel = "stylesheet" href = "_static/pygments.css" type = "text/css" / >
< link rel = "stylesheet" href = "_static/overrides.css" type = "text/css" / >
< link rel = "index" title = "索引" href = "genindex.html" / >
< link rel = "search" title = "搜索" href = "search.html" / >
< link rel = "next" title = "thread" href = "thread.html" / >
< link rel = "prev" title = "命令列表" href = "commands.html" / >
< script >
if (window.location.href.startsWith("https://alibaba.github.io/arthas/")) {
window.location.href = "https://arthas.aliyun.com/doc/" + window.location.href.substr("https://alibaba.github.io/arthas/".length);
}
< / script >
< script src = "_static/center_page.js" > < / script >
< link rel = "stylesheet" href = "https://g.alicdn.com/code/lib/highlight.js/9.13.1/styles/github.min.css" >
< / head >
< body class = "wy-body-for-nav" >
< div class = "wy-grid-for-nav" >
< nav data-toggle = "wy-nav-shift" class = "wy-nav-side" >
< div class = "wy-side-scroll" >
< div class = "wy-side-nav-search" >
< a href = "index.html" class = "icon icon-home" > Arthas
< / a >
< div class = "version" >
3.4.6
< / div >
< div role = "search" >
< form id = "rtd-search-form" class = "wy-form" action = "search.html" method = "get" >
< input type = "text" name = "q" placeholder = "Search docs" / >
< input type = "hidden" name = "check_keywords" value = "yes" / >
< input type = "hidden" name = "area" value = "default" / >
< / form >
< / div >
< / div >
< div class = "wy-menu wy-menu-vertical" data-spy = "affix" role = "navigation" aria-label = "main navigation" >
< ul class = "current" >
< li class = "toctree-l1" > < a class = "reference external" href = "https://arthas.aliyun.com/" > 首页< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://mp.weixin.qq.com/s/k5jozrSgmyH0tcQfrDkxUQ" > 招聘!< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://developer.aliyun.com/article/751641" > 技术征文< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://arthas.aliyun.com/doc/en/" > English Docs< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn" > 在线教程(katacoda)< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://start.aliyun.com/handson-lab/#%21category=arthas" > 在线教程(阿里云)< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "install-detail.html" > 安装< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "download.html" > 下载< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "quick-start.html" > 快速入门< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "advanced-use.html" > 进阶使用< / a > < / li >
< li class = "toctree-l1 current" > < a class = "reference internal" href = "commands.html" > 命令列表< / a > < ul class = "current" >
< li class = "toctree-l2 current" > < a class = "current reference internal" href = "#" > dashboard< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "#id1" > 参数说明< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "#id2" > 使用参考< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "#id3" > 数据说明< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "#jvm" > JVM内部线程< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "#id4" > 截图展示< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "thread.html" > thread< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "jvm.html" > jvm< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "sysprop.html" > sysprop< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "sysenv.html" > sysenv< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "vmoption.html" > vmoption< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "perfcounter.html" > perfcounter< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "logger.html" > logger< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "mbean.html" > mbean< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "getstatic.html" > getstatic< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "ognl.html" > ognl< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "sc.html" > sc< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "sm.html" > sm< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "dump.html" > dump< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "heapdump.html" > heapdump< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "jad.html" > jad< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "classloader.html" > classloader< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "mc.html" > mc< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "retransform.html" > retransform< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "redefine.html" > redefine< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "monitor.html" > monitor< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "watch.html" > watch< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "trace.html" > trace< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "stack.html" > stack< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "tt.html" > tt< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "profiler.html" > profiler< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "cat.html" > cat< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "echo.html" > echo< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "grep.html" > grep< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "base64.html" > base64< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "tee.html" > tee< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "pwd.html" > pwd< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "options.html" > options< / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "commands.html#arthas" > Arthas 基础命令< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "web-console.html" > WebConsole< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "tunnel.html" > Arthas Tunnel< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "http-api.html" > Http API< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "docker.html" > Docker< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "spring-boot-starter.html" > Arthas Spring Boot Starter< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "idea-plugin.html" > IDEA 插件< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://github.com/alibaba/arthas/issues?q=label%3Auser-case" > 用户案例< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "faq.html" > FAQ/常见问题< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://github.com/alibaba/arthas" > Star me at GitHub< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://github.com/alibaba/arthas/blob/master/CONTRIBUTING.md#" > 编译调试/参与贡献< / a > < / li >
< li class = "toctree-l1" > < a class = "reference external" href = "https://github.com/alibaba/arthas/releases" > Release Notes< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "contact-us.html" > QQ群/钉钉群< / a > < / li >
< / ul >
< / div >
< / div >
< / nav >
< section data-toggle = "wy-nav-shift" class = "wy-nav-content-wrap" >
< nav class = "wy-nav-top" aria-label = "top navigation" >
< i data-toggle = "wy-nav-top" class = "fa fa-bars" > < / i >
< a href = "index.html" > Arthas< / a >
< / nav >
< div class = "wy-nav-content" >
< div class = "rst-content" >
< div role = "navigation" aria-label = "breadcrumbs navigation" >
< ul class = "wy-breadcrumbs" >
< li > < a href = "index.html" > Docs< / a > » < / li >
< li > < a href = "commands.html" > 命令列表< / a > » < / li >
< li > dashboard< / li >
< li class = "wy-breadcrumbs-aside" >
< a href = "https://github.com/alibaba/arthas/blob/master/site/src/site/sphinx/dashboard.md" class = "fa fa-github" > Edit on GitHub< / a >
< / li >
< / ul >
< hr / >
< / div >
< div role = "main" class = "document" itemscope = "itemscope" itemtype = "http://schema.org/Article" >
< div itemprop = "articleBody" >
< div class = "section" id = "dashboard" >
< h1 > dashboard< a class = "headerlink" href = "#dashboard" title = "永久链接至标题" > ¶< / a > < / h1 >
< p > < a class = "reference external" href = "https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-dashboard" > < code class = "docutils literal notranslate" > < span class = "pre" > dashboard< / span > < / code > 在线教程< / a > < / p >
< blockquote >
< div > < p > 当前系统的实时数据面板,按 ctrl+c 退出。< / p >
< / div > < / blockquote >
< p > 当运行在Ali-tomcat时, 会显示当前tomcat的实时信息, 如HTTP请求的qps, rt, 错误数, 线程池信息等等。< / p >
< div class = "section" id = "id1" >
< h2 > 参数说明< a class = "headerlink" href = "#id1" title = "永久链接至标题" > ¶< / a > < / h2 >
< table border = "1" class = "docutils" >
< thead >
< tr >
< th align = "right" > 参数名称< / th >
< th align = "left" > 参数说明< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td align = "right" > [i:]< / td >
< td align = "left" > 刷新实时数据的时间间隔 (ms), 默认5000ms< / td >
< / tr >
< tr >
< td align = "right" > [n:]< / td >
< td align = "left" > 刷新实时数据的次数< / td >
< / tr >
< / tbody >
< / table > < / div >
< div class = "section" id = "id2" >
< h2 > 使用参考< a class = "headerlink" href = "#id2" title = "永久链接至标题" > ¶< / a > < / h2 >
< div class = "highlight-default notranslate" > < pre class = "literal-block" > $ dashboard
ID NAME GROUP PRIORITY STATE %CPU DELTA_TIME TIME INTERRUPTE DAEMON
-1 C2 CompilerThread0 - -1 - 1.55 0.077 0:8.684 false true
53 Timer-for-arthas-dashboard-07b system 5 RUNNABLE 0.08 0.004 0:0.004 false true
22 scheduling-1 main 5 TIMED_WAI 0.06 0.003 0:0.287 false false
-1 C1 CompilerThread0 - -1 - 0.06 0.003 0:2.171 false true
-1 VM Periodic Task Thread - -1 - 0.03 0.001 0:0.092 false true
49 arthas-NettyHttpTelnetBootstra system 5 RUNNABLE 0.02 0.001 0:0.156 false true
16 Catalina-utility-1 main 1 TIMED_WAI 0.0 0.000 0:0.029 false false
-1 G1 Young RemSet Sampling - -1 - 0.0 0.000 0:0.019 false true
17 Catalina-utility-2 main 1 WAITING 0.0 0.000 0:0.025 false false
34 http-nio-8080-ClientPoller main 5 RUNNABLE 0.0 0.000 0:0.016 false true
23 http-nio-8080-BlockPoller main 5 RUNNABLE 0.0 0.000 0:0.011 false true
-1 VM Thread - -1 - 0.0 0.000 0:0.032 false true
-1 Service Thread - -1 - 0.0 0.000 0:0.006 false true
-1 GC Thread#5 - -1 - 0.0 0.000 0:0.043 false true
Memory used total max usage GC
heap 36M 70M 4096M 0.90% gc.g1_young_generation.count 12
g1_eden_space 6M 18M -1 33.33% 86
g1_old_gen 30M 50M 4096M 0.74% gc.g1_old_generation.count 0
g1_survivor_space 491K 2048K -1 24.01% gc.g1_old_generation.time(ms) 0
nonheap 66M 69M -1 96.56%
codeheap_' non-nmethods' 1M 2M 5M 22.39%
metaspace 46M 47M -1 98.01%
Runtime
os.name Mac OS X
os.version 10.15.4
java.version 15
java.home /Library/Java/JavaVirtualMachines/jdk-15.jdk/Contents/Home
systemload.average 10.68
processors 8
uptime 272s< / pre >
< / div >
< / div >
< div class = "section" id = "id3" >
< h2 > 数据说明< a class = "headerlink" href = "#id3" title = "永久链接至标题" > ¶< / a > < / h2 >
< ul class = "simple" >
< li > < p > ID: Java级别的线程ID, 注意这个ID不能跟jstack中的nativeID一一对应。< / p > < / li >
< li > < p > NAME: 线程名< / p > < / li >
< li > < p > GROUP: 线程组名< / p > < / li >
< li > < p > PRIORITY: 线程优先级, 1~10之间的数字, 越大表示优先级越高< / p > < / li >
< li > < p > STATE: 线程的状态< / p > < / li >
< li > < p > CPU%: 线程的cpu使用率。比如采样间隔1000ms, 某个线程的增量cpu时间为100ms, 则cpu使用率=100/1000=10%< / p > < / li >
< li > < p > DELTA_TIME: 上次采样之后线程运行增量CPU时间, 数据格式为< code class = "docutils literal notranslate" > < span class = "pre" > 秒< / span > < / code > < / p > < / li >
< li > < p > TIME: 线程运行总CPU时间, 数据格式为< code class = "docutils literal notranslate" > < span class = "pre" > 分:秒< / span > < / code > < / p > < / li >
< li > < p > INTERRUPTED: 线程当前的中断位状态< / p > < / li >
< li > < p > DAEMON: 是否是daemon线程< / p > < / li >
< / ul >
< div class = "section" id = "jvm" >
< h3 > JVM内部线程< a class = "headerlink" href = "#jvm" title = "永久链接至标题" > ¶< / a > < / h3 >
< p > Java 8之后支持获取JVM内部线程CPU时间, 这些线程只有名称和CPU时间, 没有ID及状态等信息( 显示ID为-1) 。
通过内部线程可以观测到JVM活动, 如GC、JIT编译等占用CPU情况, 方便了解JVM整体运行状况。< / p >
< ul class = "simple" >
< li > < p > 当JVM 堆(heap)/元数据(metaspace)空间不足或OOM时, 可以看到GC线程的CPU占用率明显高于其他的线程。< / p > < / li >
< li > < p > 当执行< code class = "docutils literal notranslate" > < span class = "pre" > trace/watch/tt/redefine< / span > < / code > 等命令后, 可以看到JIT线程活动变得更频繁。因为JVM热更新class字节码时清除了此class相关的JIT编译结果, 需要重新编译。< / p > < / li >
< / ul >
< p > JVM内部线程包括下面几种: < / p >
< ul class = "simple" >
< li > < p > JIT编译线程: 如 < code class = "docutils literal notranslate" > < span class = "pre" > C1< / span > < span class = "pre" > CompilerThread0< / span > < / code > , < code class = "docutils literal notranslate" > < span class = "pre" > C2< / span > < span class = "pre" > CompilerThread0< / span > < / code > < / p > < / li >
< li > < p > GC线程: 如< code class = "docutils literal notranslate" > < span class = "pre" > GC< / span > < span class = "pre" > Thread0< / span > < / code > , < code class = "docutils literal notranslate" > < span class = "pre" > G1< / span > < span class = "pre" > Young< / span > < span class = "pre" > RemSet< / span > < span class = "pre" > Sampling< / span > < / code > < / p > < / li >
< li > < p > 其它内部线程: 如< code class = "docutils literal notranslate" > < span class = "pre" > VM< / span > < span class = "pre" > Periodic< / span > < span class = "pre" > Task< / span > < span class = "pre" > Thread< / span > < / code > , < code class = "docutils literal notranslate" > < span class = "pre" > VM< / span > < span class = "pre" > Thread< / span > < / code > , < code class = "docutils literal notranslate" > < span class = "pre" > Service< / span > < span class = "pre" > Thread< / span > < / code > < / p > < / li >
< / ul >
< / div >
< / div >
< div class = "section" id = "id4" >
< h2 > 截图展示< a class = "headerlink" href = "#id4" title = "永久链接至标题" > ¶< / a > < / h2 >
< p > < img alt = "_images/dashboard.png" src = "_images/dashboard.png" / > < / p >
< / div >
< / div >
< / div >
< / div >
< footer >
< div class = "rst-footer-buttons" role = "navigation" aria-label = "footer navigation" >
< a href = "thread.html" class = "btn btn-neutral float-right" title = "thread" accesskey = "n" rel = "next" > Next < span class = "fa fa-arrow-circle-right" > < / span > < / a >
< a href = "commands.html" class = "btn btn-neutral float-left" title = "命令列表" accesskey = "p" rel = "prev" > < span class = "fa fa-arrow-circle-left" > < / span > Previous< / a >
< / div >
< hr / >
< div role = "contentinfo" >
< p >
© Copyright 2018-2020, Alibaba Middleware Group, and contributors
< / p >
< / div >
Built with < a href = "http://sphinx-doc.org/" > Sphinx< / a > using a < a href = "https://github.com/rtfd/sphinx_rtd_theme" > theme< / a > provided by < a href = "https://readthedocs.org" > Read the Docs< / a > .
< / footer >
< / div >
< / div >
< / section >
< / div >
< script type = "text/javascript" >
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
< / script >
< div class = "github-fork-ribbon-wrapper right" >
< div class = "github-fork-ribbon" >
< a href = "https://github.com/alibaba/arthas" target = "_blank" > Fork me at GitHub< / a >
< / div >
< / div >
< script type = "text/javascript" src = "_static/add_badges.js" > < / script >
< script src = "https://g.alicdn.com/code/lib/highlight.js/9.13.1/highlight.min.js" > < / script >
< script src = "https://g.alicdn.com/code/lib/highlightjs-line-numbers.js/2.5.0/highlightjs-line-numbers.min.js" > < / script >
< script >
document.querySelectorAll('div.hljs > pre').forEach(function(block) {
hljs.highlightBlock(block);
hljs.lineNumbersBlock(block);
});
< / script >
< script type = "text/javascript" > document . write ( unescape ( "%3Cspan style='display:none;' id='cnzz_stat_icon_1279151497'%3E%3C/span%3E%3Cscript src='https://s4.cnzz.com/z_stat.php%3Fid%3D1279151497' type='text/javascript'%3E%3C/script%3E" ) ) ; < / script >
< script >
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?d5c5e25b100f0eb51a4c35c8a86ea9b4";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
< / script >
< / body >
< / html >