|
|
|
|
<!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><meta name="aes-config" content="pid=xux-opensource&user_type=101&uid=&username="><script src="//g.alicdn.com/alilog/mlog/aplus_v2.js" id="beacon-aplus" exparams="clog=o&aplus&sidx=aplusSidx&ckx=aplusCkx"></script><script src="//g.alicdn.com/aes/??tracker/1.0.34/index.js,tracker-plugin-pv/2.4.5/index.js,tracker-plugin-event/1.2.5/index.js,tracker-plugin-jserror/1.0.13/index.js,tracker-plugin-api/1.1.14/index.js,tracker-plugin-perf/1.1.8/index.js,tracker-plugin-eventTiming/1.0.4/index.js"></script><title>Arthas Tunnel | arthas</title><meta name="description" content="arthas 使用文档">
|
|
|
|
|
<link rel="modulepreload" href="/assets/app.e9adadd6.js"><link rel="modulepreload" href="/assets/tunnel.html.2a1cf4c4.js"><link rel="modulepreload" href="/assets/tunnel-server-agents.cae1b0b9.js"><link rel="modulepreload" href="/assets/tunnel.html.7a14e456.js"><link rel="prefetch" href="/assets/index.html.fc6fe773.js"><link rel="prefetch" href="/assets/index.html.303ae9ec.js"><link rel="prefetch" href="/assets/index.html.5be10814.js"><link rel="prefetch" href="/assets/advanced-use.html.80c572ab.js"><link rel="prefetch" href="/assets/advice-class.html.30be8b5c.js"><link rel="prefetch" href="/assets/agent.html.478e63bb.js"><link rel="prefetch" href="/assets/arthas-properties.html.126a2442.js"><link rel="prefetch" href="/assets/arthas3.html.f866a915.js"><link rel="prefetch" href="/assets/async.html.7fc6690f.js"><link rel="prefetch" href="/assets/auth.html.7faa0702.js"><link rel="prefetch" href="/assets/base64.html.91916ad8.js"><link rel="prefetch" href="/assets/batch-support.html.6d8369c7.js"><link rel="prefetch" href="/assets/cat.html.49018237.js"><link rel="prefetch" href="/assets/classloader.html.e5597a48.js"><link rel="prefetch" href="/assets/cls.html.3d057407.js"><link rel="prefetch" href="/assets/commands.html.58e9e974.js"><link rel="prefetch" href="/assets/contact-us.html.e0d74259.js"><link rel="prefetch" href="/assets/dashboard.html.688b447f.js"><link rel="prefetch" href="/assets/docker.html.17503d14.js"><link rel="prefetch" href="/assets/download.html.19809e39.js"><link rel="prefetch" href="/assets/dump.html.35a47ccf.js"><link rel="prefetch" href="/assets/echo.html.81510109.js"><link rel="prefetch" href="/assets/faq.html.e22d74d2.js"><link rel="prefetch" href="/assets/getstatic.html.9ffb9ff2.js"><link rel="prefetch" href="/assets/grep.html.7747b85b.js"><link rel="prefetch" href="/assets/groovy.html.3c2a5669.js"><link rel="prefetch" href="/assets/heapdump.html.98d7b14d.js"><link rel="prefetch" href="/assets/help.html.67db59f7.js"><link rel="prefetch" href="/assets/history.html.f6e93473.js"><link rel="prefetch" href="/assets/http-api.html.8abd260a.js"><link rel="prefetch" href="/assets/idea-plugin.html.68b7d4f4.js"><link rel="prefetch" href="/assets/install-detail.html.666bc4d2.js"><link rel="prefetch" href="/assets/jad.html.a62cf748.js"><link rel="prefetch" href="/assets/jfr.html.fb32b04e.js"><link rel="prefetch" href="/assets/jvm.html.970a2dcd.js"><link rel="prefetch" href="/assets/keymap.html.79b77d01.js"><link rel="prefetch" href="/assets/logger.html.1c7e6fb8.js"><link rel="prefetch" href="/assets/manual-install.html.5992ea2f.js"><link rel="prefetch" href="/assets/mbean.html.07f7548d.js"><link rel="prefetch" href="/assets/mc.html.4a8fe9c1.js"><link rel="prefetch" href="/assets/memory.html.f3395aa5.js"><link rel="prefetch" href="/assets/monitor.html.f16f1733.js"><link rel="prefetch" href="/assets/ognl.html.e96e8461.js"><link rel="prefetch" href="/assets/options.html.f364e3b1.js"><link rel="prefetch" href="/assets/perfcounter.html.5ac9dd17.js"><link rel="prefetch" href="/assets/profiler.html.8b48b000.js"><link rel="prefetch" href="/assets/pwd.html.0881d938.js"><link rel="prefetch" href="/assets/quick-start.html.d22745bc.js"><link rel="prefetch" href="/assets/quit.html.7ac530c1.js"><link rel="prefetch" href="/assets/redefine.html.7a72fe7b.js"><link rel="prefetch" href="/assets/release-notes.html.dd1cd195.js"><link rel="prefetch" href="/assets/reset.html.452a35fa.js"><link rel="prefetch" href="/assets/retransform.html.fbef0997.js"><link rel="prefetch" href="/assets/save-log.html.c6a45ce2.js"><link rel="prefetch" href="/assets/sc.html.6441d65e.js"><link rel="prefetch" href="/assets/session.html.ebfd8261.js"><link rel="prefetch" href="/assets/sm.html.9e10db61.js"><link rel="prefetch" href="/assets/spring-boot-starter.html.c4118b0a.js"><link rel="prefetch" href="/assets/stack.html.9add4cf4.js"><link rel="prefetch" href="/assets/start-arthas.html.bb492515.js"><link rel="prefetch" href="/assets/stop.html.b66bc06b.js"><link rel="prefetch" href="/assets/sysenv.html.26a8e556.js"><link rel="prefetch" href="/assets/syspro
|
|
|
|
|
<link rel="stylesheet" href="/assets/style.3627c3cf.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>v3.6.5</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"><a href="/doc/commands.md" class="" aria-label="命令列表"><!--[--><!--]--> 命令列表 <!--[--><!--]--></a></div><div class="navbar-item"><a href="/doc/download.md" class="" 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=artha
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>默认情况下,arthas tunnel server 的 web 端口是<code>8080</code>,arthas agent 连接的端口是<code>7777</code>。</p><p>启动之后,可以访问 <a href="http://127.0.0.1:8080/" target="_blank" rel="noopener noreferrer">http://127.0.0.1:8080/<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> ,再通过<code>agentId</code>连接到已注册的 arthas agent 上。</p><p>通过 Spring Boot 的 Endpoint,可以查看到具体的连接信息: <a href="http://127.0.0.1:8080/actuator/arthas" target="_blank" rel="noopener noreferrer">http://127.0.0.1:8080/actuator/arthas<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> ,登陆用户名是<code>arthas</code>,密码在 arthas tunnel server 的日志里可以找到,比如:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>32851 [main] INFO o.s.b.a.s.s.UserDetailsServiceAutoConfiguration
|
|
|
|
|
|
|
|
|
|
Using generated security password: f1dca050-3777-48f4-a577-6367e55a78a2
|
|
|
|
|
</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></div><h2 id="启动-arthas-时连接到-tunnel-server" tabindex="-1"><a class="header-anchor" href="#启动-arthas-时连接到-tunnel-server" aria-hidden="true">#</a> 启动 arthas 时连接到 tunnel server</h2><p>在启动 arthas,可以传递<code>--tunnel-server</code>参数,比如:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>as.sh --tunnel-server <span class="token string">'ws://127.0.0.1:7777/ws'</span>
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>也可以使用下面的测试地址(不保证一直可用):</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>as.sh --tunnel-server <span class="token string">'ws://47.75.156.201:80/ws'</span>
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li>如果有特殊需求,可以通过<code>--agent-id</code>参数里指定 agentId。默认情况下,会生成随机 ID。</li></ul><p>attach 成功之后,会打印出 agentId,比如:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code> ,---. ,------. ,--------.,--. ,--. ,---. ,---.
|
|
|
|
|
/ 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>-----'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
wiki https://arthas.aliyun.com/doc
|
|
|
|
|
tutorials https://arthas.aliyun.com/doc/arthas-tutorials.html
|
|
|
|
|
version <span class="token number">3.1</span>.2
|
|
|
|
|
pid <span class="token number">86183</span>
|
|
|
|
|
<span class="token function">time</span> <span class="token number">2019</span>-08-30 <span class="token number">15</span>:40:53
|
|
|
|
|
<span class="token function">id</span> URJZ5L48RPBR2ALI5K4V
|
|
|
|
|
</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 class="line-number"></div></div></div><p>如果是启动时没有连接到 tunnel server,也可以在后续自动重连成功之后,通过 session 命令来获取 agentId:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@86183<span class="token punctuation">]</span>$ session
|
|
|
|
|
Name Value
|
|
|
|
|
-----------------------------------------------------
|
|
|
|
|
JAVA_PID <span class="token number">86183</span>
|
|
|
|
|
SESSION_ID f7273eb5-e7b0-4a00-bc5b-3fe55d741882
|
|
|
|
|
AGENT_ID URJZ5L48RPBR2ALI5K4V
|
|
|
|
|
TUNNEL_SERVER ws://47.75.156.201:80/ws
|
|
|
|
|
</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></div><p>以上面的为例,在浏览器里访问 <a href="http://47.75.156.201/arthas/?port=80" target="_blank" rel="noopener noreferrer">http://47.75.156.201/arthas/?port=80<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> ,输入 <code>agentId</code>,就可以连接到本机上的 arthas 了。</p><p><img src="/images/arthas-tunnel-server.png" alt=""></p><h2 id="最佳实践" tabindex="-1"><a class="header-anchor" href="#最佳实践" aria-hidden="true">#</a> 最佳实践</h2><div class="custom-container tip"><p class="custom-container-title">提示</p><p>注意,agentId 要保持唯一,否则会在 tunnel server 上冲突,不能正常工作。</p></div><p>如果 arthas agent 配置了 <code>appName</code>,则生成的 agentId 会带上<code>appName</code>的前缀。</p><p>比如在加上启动参数:<code>as.sh --tunnel-server 'ws://127.0.0.1:7777/ws' --app-name demoapp</code> ,则生成的 agentId 可能是<code>demoapp_URJZ5L48RPBR2ALI5K4V</code>。</p><p>Tunnel server 会以<code>_</code>做分隔符,提取出<code>appName</code>,方便按应用进行管理。</p><div class="custom-container tip"><p class="custom-container-title">提示</p><p>另外,也可以在解压的 arthas 目录下的 <code>arthas.properties</code>,或者在 spring boot 应用的<code>application.properties</code>里配置<code>appName</code>。</p></div><h2 id="tunnel-server-的管理页面" tabindex="-1"><a class="header-anchor" href="#tunnel-server-的管理页面" aria-hidden="true">#</a> Tunnel Server 的管理页面</h2><div class="custom-container tip"><p class="custom-container-title">提示</p><p>需要在 spring boot 的<code>application.properties</code>里配置 <code>arthas.enable-detail-pages=true</code></p><p><strong>注意,开放管理页面有风险!管理页面没有安全拦截功能,务必自行增加安全措施。</strong></p></div><p>在本地启动 tunnel-server,然后使用<code>as.sh</code> attach,并且指定应用名<code>--app-name test</code>:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ as.sh --tunnel-server 'ws://127.0.0.1:7777/ws' --app-name test
|
|
|
|
|
telnet connecting to arthas server... current timestamp is 1627539688
|
|
|
|
|
Trying 127.0.0.1...
|
|
|
|
|
Connected to 127.0.0.1.
|
|
|
|
|
Escape character is '^]'.
|
|
|
|
|
,---. ,------. ,--------.,--. ,--. ,---. ,---.
|
|
|
|
|
/ O \ | .--. ''--. .--'| '--' | / O \ ' .-'
|
|
|
|
|
| .-. || '--'.' | | | .--. || .-. |`. `-.
|
|
|
|
|
| | | || |\ \ | | | | | || | | |.-' |
|
|
|
|
|
`--' `--'`--' '--' `--' `--' `--'`--' `--'`-----'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
wiki https://arthas.aliyun.com/doc
|
|
|
|
|
tutorials https://arthas.aliyun.com/doc/arthas-tutorials.html
|
|
|
|
|
version 3.5.3
|
|
|
|
|
main_class demo.MathGame
|
|
|
|
|
pid 65825
|
|
|
|
|
time 2021-07-29 14:21:29
|
|
|
|
|
id test_PE3LZO9NA9ENJYTPGL9L
|
|
|
|
|
</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 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><p>然后访问 tunnel-server,可以看到所有连接的应用列表:</p><p><a href="http://localhost:8080/apps.html" target="_blank" rel="noopener noreferrer">http://localhost:8080/apps.html<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></p><p><img src="/images/tunnel-server-apps.png" alt=""></p><p>再打开详情,则可以看到连接的所有 agent 列表:</p><p><a href="http://localhost:8080/agents.html?app=test" target="_blank" rel="noopener noreferrer">http://localhost:8080/agents.html?app=test<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></p><p><img src="/images/tunnel-server-agents.png" alt=""></p><h2 id="安全和权限管理" tabindex="-1"><a class="header-anchor" href="#安全和权限管理" aria-hidden="true">#</a> 安全和权限管理</h2><div class="custom-container tip"><p class="custom-container-title">提示</p><p><strong>强烈建议不要把 tunnel server 直接暴露到公网上。</strong></p></div><p>目前 tunnel server 没有专门的权限管理</p><ol><li>用户需要自行开发,对 app name 鉴权。</li><li>如果开放管理页面,需要增加安全措施。</li></ol><h2 id="集群方式管理" tabindex="-1"><a class="header-anchor" href="#集群方式管理" aria-hidden="true">#</a> 集群方式管理</h2><p>如果希望部署多台 tunnel server,可以通过 nginx 做转发,redis 来保存 agent 信息。</p><ul><li>nginx 需要配置 sticky session,保证用户 web socket 连接到同一个后端 tunnel server 上。简单的配置方式是用<code>ip_hash</code>。</li></ul><h2 id="arthas-tunnel-server-的工作原理" tabindex="-1"><a class="header-anchor" href="#arthas-tunnel-server-的工作原理" aria-hidden="true">#</a> Arthas tunnel server 的工作原理</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>browser <-> arthas tunnel server <-> arthas tunnel client <-> arthas agent
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p><a href="https://github.com/alibaba/arthas/blob/master/tunnel-server/README.md#" target="_blank" rel="noopener noreferrer">tunnel-server/README.md<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></p></div><!--[--><!--]--></div><footer class="page-meta right-menu-padding" data-v-8e2a76de><div class="meta-item edit-link"><a class="external-link meta-item-label" href="https://github.com/alibaba/arthas/edit/master/site/docs/doc/tunnel.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: i@fatpandac.com">Fatpandac</span><!--[-->, <!--]--><!--]--><!--[--><span class="contributor" title="email: hengyunabc@users.noreply.github.com">hengyunabc</span><!----><!--]--><!--]--></span></div></footer><nav class="page-nav right-menu-padding" data-v-8e2a76de><p class="inner"><span class="prev"><a href="/doc/web-console.html" class="" aria-label="Web Console"><!--[--><!--]--> Web Console <!--[--><!--]--></a></span><span class="next"><a href="/doc/http-api.html" class="" aria-label="Http API"><!--[--><!--]--> Http API <!--[--><!--]--></a></span></p></nav><!--[--><!--]--></main><!--]--></div><!----><!--]--></div>
|
|
|
|
|
<script type="module" src="/assets/app.e9adadd6.js" defer></script>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|