<!DOCTYPE html>
< html lang = "zh-CN" >
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width,initial-scale=1" >
< meta name = "generator" content = "VuePress 2.0.0-beta.49" >
< style >
:root {
--c-bg: #fff;
}
html.dark {
--c-bg: #22272e;
}
html, body {
background-color: var(--c-bg);
}
< / style >
< script >
const userMode = localStorage.getItem('vuepress-color-scheme');
const systemDarkMode = window.matchMedia & & window.matchMedia('(prefers-color-scheme: dark)').matches;
if (userMode === 'dark' || (userMode !== 'light' & & systemDarkMode)) {
document.documentElement.classList.toggle('dark', true);
}
< / script >
< link rel = "icon" href = "/images/favicon.ico" > < meta name = "viewport" content = "width=device-width, initial-scale=1.0" > < meta property = "og:title" content = "Arthas" > < meta property = "og:image:alt" content = "Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas" > < meta property = "og:image" content = "/images/arthas_mate_image.png" > < meta property = "og:description" content = "Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas" > < meta property = "og:image:width" content = "1200" > < meta property = "og:image:height" content = "600" > < meta property = "twitter:image:src" content = "/images/arthas_mate_image.png" > < meta property = "twitter:image:alt" content = "Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas" > < meta itemprop = "name" content = "Arthas" > < meta itemprop = "image" content = "/images/arthas_mate_image.png" > < meta itemprop = "description" content = "Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas" > < 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 > < title > 启动 Arthas | arthas< / title > < meta name = "description" content = "arthas 使用文档" >
< link rel = "modulepreload" href = "/assets/app.b50c38a7.js" > < link rel = "modulepreload" href = "/assets/start-arthas.html.f8143d5f.js" > < link rel = "modulepreload" href = "/assets/start-arthas.html.073b53b8.js" > < link rel = "prefetch" href = "/assets/index.html.ec74869a.js" > < link rel = "prefetch" href = "/assets/index.html.d3cced9f.js" > < link rel = "prefetch" href = "/assets/index.html.c047f67a.js" > < link rel = "prefetch" href = "/assets/advanced-use.html.7d8cad47.js" > < link rel = "prefetch" href = "/assets/advice-class.html.81ca867b.js" > < link rel = "prefetch" href = "/assets/agent.html.116d2095.js" > < link rel = "prefetch" href = "/assets/arthas-properties.html.1a6ee17c.js" > < link rel = "prefetch" href = "/assets/async.html.846b0018.js" > < link rel = "prefetch" href = "/assets/auth.html.166d9576.js" > < link rel = "prefetch" href = "/assets/base64.html.29f63ec7.js" > < link rel = "prefetch" href = "/assets/batch-support.html.84d19c82.js" > < link rel = "prefetch" href = "/assets/cat.html.f100d9a7.js" > < link rel = "prefetch" href = "/assets/classloader.html.b74bdea1.js" > < link rel = "prefetch" href = "/assets/cls.html.f6f67018.js" > < link rel = "prefetch" href = "/assets/commands.html.fe29fa8d.js" > < link rel = "prefetch" href = "/assets/contact-us.html.6604f2e9.js" > < link rel = "prefetch" href = "/assets/dashboard.html.92d46fc2.js" > < link rel = "prefetch" href = "/assets/docker.html.a21ac0d0.js" > < link rel = "prefetch" href = "/assets/download.html.24566778.js" > < link rel = "prefetch" href = "/assets/dump.html.db117ae6.js" > < link rel = "prefetch" href = "/assets/echo.html.3a53ce15.js" > < link rel = "prefetch" href = "/assets/faq.html.5181458e.js" > < link rel = "prefetch" href = "/assets/getstatic.html.7b756fa0.js" > < link rel = "prefetch" href = "/assets/grep.html.ed15c9c0.js" > < link rel = "prefetch" href = "/assets/groovy.html.1e44a2ad.js" > < link rel = "prefetch" href = "/assets/heapdump.html.77260129.js" > < link rel = "prefetch" href = "/assets/help.html.4328ee99.js" > < link rel = "prefetch" href = "/assets/history.html.7d1ee6db.js" > < link rel = "prefetch" href = "/assets/http-api.html.c068f40e.js" > < link rel = "prefetch" href = "/assets/idea-plugin.html.d1b8320d.js" > < link rel = "prefetch" href = "/assets/install-detail.html.ff4b709c.js" > < link rel = "prefetch" href = "/assets/jad.html.b9ba0618.js" > < link rel = "prefetch" href = "/assets/jvm.html.7433a432.js" > < link rel = "prefetch" href = "/assets/keymap.html.5e56e402.js" > < link rel = "prefetch" href = "/assets/logger.html.dd664c3e.js" > < link rel = "prefetch" href = "/assets/manual-install.html.985e84d2.js" > < link rel = "prefetch" href = "/assets/mbean.html.375818fb.js" > < link rel = "prefetch" href = "/assets/mc.html.c087f4a7.js" > < link rel = "prefetch" href = "/assets/memory.html.d126f7ce.js" > < link rel = "prefetch" href = "/assets/monitor.html.e640658b.js" > < link rel = "prefetch" href = "/assets/ognl.html.50d31bfa.js" > < link rel = "prefetch" href = "/assets/options.html.02f35cf0.js" > < link rel = "prefetch" href = "/assets/perfcounter.html.be2ca263.js" > < link rel = "prefetch" href = "/assets/profiler.html.5c15fc85.js" > < link rel = "prefetch" href = "/assets/pwd.html.178ca91a.js" > < link rel = "prefetch" href = "/assets/quick-start.html.23bab134.js" > < link rel = "prefetch" href = "/assets/quit.html.32b791ff.js" > < link rel = "prefetch" href = "/assets/redefine.html.b99e2349.js" > < link rel = "prefetch" href = "/assets/release-notes.html.a31e5aa6.js" > < link rel = "prefetch" href = "/assets/reset.html.9cc609e7.js" > < link rel = "prefetch" href = "/assets/retransform.html.16689941.js" > < link rel = "prefetch" href = "/assets/save-log.html.4b8f9354.js" > < link rel = "prefetch" href = "/assets/sc.html.81bd67fa.js" > < link rel = "prefetch" href = "/assets/session.html.5dca4ee2.js" > < link rel = "prefetch" href = "/assets/sm.html.cdbbfc63.js" > < link rel = "prefetch" href = "/assets/spring-boot-starter.html.3e4e52ea.js" > < link rel = "prefetch" href = "/assets/stack.html.db2ffb06.js" > < link rel = "prefetch" href = "/assets/start-arthas.html.fdd98fbc.js" > < link rel = "prefetch" href = "/assets/stop.html.05acafa3.js" > < link rel = "prefetch" href = "/assets/sysenv.html.b20090af.js" > < link rel = "prefetch" href = "/assets/sysprop.html.b112fbfa.js" > < link rel = "prefetch" href = "/assets/tee.html.17ceb9fc.js" > < link rel = "prefetch" href = "/assets/thread.html.674aa7a4.js" > < link rel = "prefetch" href = "/assets/trace.ht
< link rel = "stylesheet" href = "/assets/style.c4fc83ba.css" >
< / head >
< body >
< div id = "app" > <!-- [ --> < div class = "theme-container" > <!-- [ --> < header class = "navbar" > < div class = "toggle-sidebar-button" title = "切换侧边栏" aria-expanded = "false" role = "button" tabindex = "0" > < div class = "icon" aria-hidden = "true" > < span > < / span > < span > < / span > < span > < / span > < / div > < / div > < span > < a href = "/" class = "" data-v-2aa8cc94 > <!-- --> < span class = "site-name can-hide" data-v-2aa8cc94 > arthas< / span > < span class = "navbar-version" data-v-2aa8cc94 > vundefined< / span > < / a > < / span > < div class = "navbar-items-wrapper" style = "" > <!-- [ --> <!-- ] --> < nav class = "navbar-items can-hide" > <!-- [ --> < div class = "navbar-item" > < a href = "/" class = "" aria-label = "首页" > <!-- [ --> <!-- ] --> 首页 <!-- [ --> <!-- ] --> < / a > < / div > < div class = "navbar-item" > < a class = "external-link" href = "/doc/arthas-tutorials.html?language=cn&id=arthas-basics" rel = "noopener noreferrer" target = "_blank" aria-label = "在线教程" > <!-- [ --> <!-- ] --> < span > 在线教程< / span > < span > < svg class = "external-link-icon" xmlns = "http://www.w3.org/2000/svg" aria-hidden = "true" focusable = "false" x = "0px" y = "0px" viewbox = "0 0 100 100" width = "15" height = "15" > < path fill = "currentColor" d = "M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z" > < / path > < polygon fill = "currentColor" points = "45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9" > < / polygon > < / svg > < span class = "external-link-icon-sr-only" > 在新窗口打开< / span > < / span > <!-- [ --> <!-- ] --> < / a > < / div > < div class = "navbar-item" > < a href = "/doc/" class = "router-link-active" aria-label = "文档" > <!-- [ --> <!-- ] --> 文档 <!-- [ --> <!-- ] --> < / a > < / div > < div class = "navbar-item" > < div class = "navbar-dropdown-wrapper" > < button class = "navbar-dropdown-title" type = "button" aria-label = "解决方案" > < span class = "title" > 解决方案< / span > < span class = "arrow down" > < / span > < / button > < button class = "navbar-dropdown-title-mobile" type = "button" aria-label = "解决方案" > < span class = "title" > 解决方案< / span > < span class = "right arrow" > < / span > < / button > < ul style = "display:none;" class = "navbar-dropdown" > <!-- [ --> < li class = "navbar-dropdown-item" > < a class = "external-link" href = "https://cn.aliyun.com/product/aliware/mse?spm=arthas.topbar.0.0.0" rel = "noopener noreferrer" target = "_blank" aria-label = "微服务解决方案" > <!-- [ --> <!-- ] --> < span > 微服务解决方案< / span > < span > < svg class = "external-link-icon" xmlns = "http://www.w3.org/2000/svg" aria-hidden = "true" focusable = "false" x = "0px" y = "0px" viewbox = "0 0 100 100" width = "15" height = "15" > < path fill = "currentColor" d = "M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z" > < / path > < polygon fill = "currentColor" points = "45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9" > < / polygon > < / svg > < span class = "external-link-icon-sr-only" > 在新窗口打开< / span > < / span > <!-- [ --> <!-- ] --> < / a > < / li > < li class = "navbar-dropdown-item" > < a class = "external-link" href = "https://www.aliyun.com/aliware/txc?spm=arthas.topbar.0.0.0" rel = "noopener noreferrer" target = "_blank" aria-label = "分布式事务解决方案" > <!-- [ --> <!-- ] --> < span > 分布式事务解决方案< / span > < span > < svg class = "external-link-icon" xmlns = "http://www.w3.org/2000/svg" aria-hidden = "true" focusable = "false" x = "0px" y = "0px" viewbox = "0 0 100 100" width = "15" height = "15" > < path fill = "currentColor" d = "M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z" > < / path > < polygon fill = "currentColor" points = "45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9" > < / polygon > < / svg > < span class = "external-link-icon-sr-only" > 在新窗口打开< / span > < / span > <!-- [ --> <!-- ] --> < / a > < / li > < li class = "navbar-dropdown-item" > < a class = "external-link" href = "https://www.aliyun.com/product/ahas?spm=arthas.topbar.0.0.0" rel = "noopener noreferrer" target = "_blank" aria-label = "高可用解决方案" > <!-- [ --> <!-- ] --> < span > 高可用解决方案< / span > < span > < svg class = "external-link-icon" xmlns = "http://www.w3.org/2000/svg" aria-hidden = "true" focusable = "false" x = "0px" y = "0px" v
< / code > < / pre > < div class = "line-numbers" aria-hidden = "true" > < div class = "line-number" > < / div > < / div > < / div > < div class = "language-bash ext-sh line-numbers-mode" > < pre class = "language-bash" > < code > ➜ bin git:< span class = "token punctuation" > (< / span > develop< span class = "token punctuation" > )< / span > ✗ ./as.sh
Found existing java process, please choose one and input the serial number of the process, eg: < span class = "token number" > 1< / span > < span class = "token builtin class-name" > .< / span > Then hit ENTER.
< span class = "token punctuation" > [< / span > < span class = "token number" > 1< / span > < span class = "token punctuation" > ]< / span > : < span class = "token number" > 3088< / span > org.jetbrains.idea.maven.server.RemoteMavenServer
* < span class = "token punctuation" > [< / span > < span class = "token number" > 2< / span > < span class = "token punctuation" > ]< / span > : < span class = "token number" > 12872< / span > org.apache.catalina.startup.Bootstrap
< span class = "token punctuation" > [< / span > < span class = "token number" > 3< / span > < span class = "token punctuation" > ]< / span > : < span class = "token number" > 2455< / span >
Attaching to < span class = "token number" > 12872< / span > < span class = "token punctuation" > ..< / span > .
,---. ,------. ,--------.,--. ,--. ,---. ,---.
/ O < span class = "token punctuation" > \< / span > < span class = "token operator" > |< / span > .--. < span class = "token string" > ' ' < / span > --. .--< span class = "token string" > ' | ' < / span > --< span class = "token string" > ' | / O \ ' < / span > .-< span class = "token string" > '
| .-. || ' < / span > --< span class = "token string" > ' .' < / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > .--. < span class = "token operator" > ||< / span > .-. < span class = "token operator" > |< / span > < span class = "token variable" > < span class = "token variable" > `< / span > < span class = "token builtin class-name" > .< / span > < span class = "token variable" > `< / span > < / span > -.
< span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > ||< / span > < span class = "token operator" > |< / span > < span class = "token punctuation" > \< / span > < span class = "token punctuation" > \< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > ||< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > < span class = "token operator" > |< / span > .-< span class = "token string" > ' |
`--' < / span > < span class = "token variable" > < span class = "token variable" > `< / span > --' < span class = "token variable" > `< / span > < / span > --< span class = "token string" > ' ' < / span > --< span class = "token string" > ' `--' < / span > < span class = "token variable" > < span class = "token variable" > `< / span > --' < span class = "token variable" > `< / span > < / span > --< span class = "token string" > ' `--' < / span > < span class = "token variable" > < span class = "token variable" > `< / span > --' < span class = "token variable" > `< / span > < / span > -----'
$
< / code > < / pre > < div class = "line-numbers" aria-hidden = "true" > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < div class = "line-number" > < / div > < / div > < / div > < h2 id = "非交互模式启动" tabindex = "-1" > < a class = "header-anchor" href = "#非交互模式启动" aria-hidden = "true" > #< / a > 非交互模式启动< / h2 > < p > 启动脚本如下:< / p > < div class = "language-bash ext-sh line-numbers-mode" > < pre class = "language-bash" > < code > ./as.sh < span class = "token operator" > < < / span > PID< span class = "token operator" > > < / span > < span class = "token punctuation" > [< / span > @IP:PORT< span class = "token punctuation" > ]< / span >
< / code > < / pre > < div class = "line-numbers" aria-hidden = "true" > < div class = "line-number" > < / div > < / div > < / div > < h3 id = "参数说明" tabindex = "-1" > < a class = "header-anchor" href = "#参数说明" aria-hidden = "true" > #< / a > 参数说明< / h3 > < ul > < li > PID: 目标 Java 进程 ID( 请确保执行当前执行命令的用户必须有足够的权限操作对应的 Java 进程)< / li > < li > IP: Arthas Server 侦听的地址,默认值是 < code > 127.00.1< / code > 。Arthas 允许多个用户同时访问,并且各自的命令不会相互干扰执行< / li > < li > PORT: 目标服务器 Arthas Server 的端口号,默认的端口号是 3658< / li > < / ul > < h3 id = "示例" tabindex = "-1" > < a class = "header-anchor" href = "#示例" aria-hidden = "true" > #< / a > 示例< / h3 > < ul > < li > < p > 如果不指定 IP 和 PORT, 默认是 127.0.0.1 和 3658< / p > < blockquote > < p > ./as.sh 12345< / p > < / blockquote > < p > 上述命令等价于:< / p > < blockquote > < p > ./as.sh 12356@127.0.0.1:3658< / p > < / blockquote > < / li > < / ul > < h3 id = "远程诊断" tabindex = "-1" > < a class = "header-anchor" href = "#远程诊断" aria-hidden = "true" > #< / a > 远程诊断< / h3 > < p > 服务器启动 Arthas Server 后,其他人可以使用 telnet 远程连接上去进程诊断,例如:< / p > < div class = "language-bash ext-sh line-numbers-mode" > < pre class = "language-bash" > < code > telnet < span class = "token number" > 192.168< / span > .1.119 < span class = "token number" > 3658< / span >
< / code > < / pre > < div class = "line-numbers" aria-hidden = "true" > < div class = "line-number" > < / div > < / div > < / div > < h3 id = "sudo-支持" tabindex = "-1" > < a class = "header-anchor" href = "#sudo-支持" aria-hidden = "true" > #< / a > sudo 支持< / h3 > < p > 成熟的线上管理环境一般都不会直接开放 JVM 部署用户权限给你,而是通过 sudo-list 来控制和监控用户的越权操作。由于 as.sh 脚本中会对当前用户的环境变量产生感知,所以需要加上 -H 参数< / p > < div class = "language-bash ext-sh line-numbers-mode" > < pre class = "language-bash" > < code > < span class = "token function" > sudo< / span > -u admin -H ./as.sh < span class = "token number" > 12345< / span >
< / code > < / pre > < div class = "line-numbers" aria-hidden = "true" > < div class = "line-number" > < / div > < / div > < / div > < h3 id = "windows-环境支持" tabindex = "-1" > < a class = "header-anchor" href = "#windows-环境支持" aria-hidden = "true" > #< / a > Windows 环境支持< / h3 > < p > 目前< code > as.bat< / code > 脚本只支持一个参数: pid< / p > < div class = "language-bash ext-sh line-numbers-mode" > < pre class = "language-bash" > < code > as.bat < span class = "token operator" > < < / span > pid< span class = "token operator" > > < / span >
< / code > < / pre > < div class = "line-numbers" aria-hidden = "true" > < div class = "line-number" > < / div > < / div > < / div > < / div > <!-- [ --> <!-- ] --> < / div > < footer class = "page-meta right-menu-padding" data-v-e0e60120 > < div class = "meta-item edit-link" > < a class = "external-link meta-item-label" href = "https://github.com/alibaba/arthas/edit/master/site/docs/doc/start-arthas.md" rel = "noopener noreferrer" target = "_blank" aria-label = "在 GitHub 上编辑此页" > <!-- [ --> <!-- ] --> < span > 在 GitHub 上编辑此页< / span > < span > < svg class = "external-link-icon" xmlns = "http://www.w3.org/2000/svg" aria-hidden = "true" focusable = "false" x = "0px" y = "0px" viewbox = "0 0 100 100" width = "15" height = "15" > < path fill = "currentColor" d = "M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z" > < / path > < polygon fill = "currentColor" points = "45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9" > < / polygon > < / svg > < span class = "external-link-icon-sr-only" > 在新窗口打开< / span > < / span > <!-- [ --> <!-- ] --> < / a > < / div > < div class = "meta-item last-updated" > < span class = "meta-item-label" > Last Updated: < / span > <!-- --> < / div > < div class = "meta-item contributors" > < span class = "meta-item-label" > 贡献者: < / span > < span class = "meta-item-info" > <!-- [ --> <!-- [ --> < span class = "contributor" title = "email: hengyunabc@gmail.com" > hengyunabc< / span > <!-- [ --> , <!-- ] --> <!-- ] --> <!-- [ --> < span class = "contributor" title = "email: 240951888@qq.com" > mantuliu< / span > <!-- --> <!-- ] --> <!-- ] --> < / span > < / div > < / footer > <!-- --> <!-- [ --> <!-- ] --> < / main > <!-- ] --> < / div > <!-- --> <!-- ] --> < / div >
< script type = "module" src = "/assets/app.b50c38a7.js" defer > < / script >
< / body >
< / html >