mirror of https://github.com/alibaba/arthas.git
update doc, add expert faq
parent
1c3caaf72c
commit
0658c70522
@ -1 +1 @@
|
||||
import{_ as e,o as c,c as t}from"./app.98a29f3d.js";const _={};function o(r,n){return c(),t("div")}const a=e(_,[["render",o],["__file","404.html.vue"]]);export{a as default};
|
||||
import{_ as e,o as c,c as t}from"./app.977e81c1.js";const _={};function o(r,n){return c(),t("div")}const a=e(_,[["render",o],["__file","404.html.vue"]]);export{a as default};
|
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-0d09f68d","path":"/doc/advanced-use.html","title":"\u5176\u4ED6\u7279\u6027","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Arthas \u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","slug":"arthas-\u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","link":"#arthas-\u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","children":[]},{"level":2,"title":"\u6267\u884C\u7ED3\u679C\u5B58\u65E5\u5FD7","slug":"\u6267\u884C\u7ED3\u679C\u5B58\u65E5\u5FD7","link":"#\u6267\u884C\u7ED3\u679C\u5B58\u65E5\u5FD7","children":[]},{"level":2,"title":"Docker","slug":"docker","link":"#docker","children":[]},{"level":2,"title":"Web Console","slug":"web-console","link":"#web-console","children":[]},{"level":2,"title":"Arthas Tunnel","slug":"arthas-tunnel","link":"#arthas-tunnel","children":[]},{"level":2,"title":"ognl \u8868\u8FBE\u5F0F\u7528\u6CD5","slug":"ognl-\u8868\u8FBE\u5F0F\u7528\u6CD5","link":"#ognl-\u8868\u8FBE\u5F0F\u7528\u6CD5","children":[]},{"level":2,"title":"IDEA Plugin","slug":"idea-plugin","link":"#idea-plugin","children":[]},{"level":2,"title":"Arthas Properties","slug":"arthas-properties","link":"#arthas-properties","children":[]},{"level":2,"title":"\u4EE5 java agent \u65B9\u5F0F\u542F\u52A8","slug":"\u4EE5-java-agent-\u65B9\u5F0F\u542F\u52A8","link":"#\u4EE5-java-agent-\u65B9\u5F0F\u542F\u52A8","children":[]},{"level":2,"title":"Arthas Spring Boot Starter","slug":"arthas-spring-boot-starter","link":"#arthas-spring-boot-starter","children":[]},{"level":2,"title":"HTTP API","slug":"http-api","link":"#http-api","children":[]},{"level":2,"title":"\u6279\u5904\u7406\u529F\u80FD","slug":"\u6279\u5904\u7406\u529F\u80FD","link":"#\u6279\u5904\u7406\u529F\u80FD","children":[]},{"level":2,"title":"as.sh \u548C arthas-boot \u6280\u5DE7","slug":"as-sh-\u548C-arthas-boot-\u6280\u5DE7","link":"#as-sh-\u548C-arthas-boot-\u6280\u5DE7","children":[]},{"level":2,"title":"\u7528\u6237\u6570\u636E\u56DE\u62A5","slug":"\u7528\u6237\u6570\u636E\u56DE\u62A5","link":"#\u7528\u6237\u6570\u636E\u56DE\u62A5","children":[]}],"git":{"updatedTime":1692845375000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/advanced-use.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-0d09f68d","path":"/doc/advanced-use.html","title":"\u5176\u4ED6\u7279\u6027","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Arthas \u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","slug":"arthas-\u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","link":"#arthas-\u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","children":[]},{"level":2,"title":"\u6267\u884C\u7ED3\u679C\u5B58\u65E5\u5FD7","slug":"\u6267\u884C\u7ED3\u679C\u5B58\u65E5\u5FD7","link":"#\u6267\u884C\u7ED3\u679C\u5B58\u65E5\u5FD7","children":[]},{"level":2,"title":"Docker","slug":"docker","link":"#docker","children":[]},{"level":2,"title":"Web Console","slug":"web-console","link":"#web-console","children":[]},{"level":2,"title":"Arthas Tunnel","slug":"arthas-tunnel","link":"#arthas-tunnel","children":[]},{"level":2,"title":"ognl \u8868\u8FBE\u5F0F\u7528\u6CD5","slug":"ognl-\u8868\u8FBE\u5F0F\u7528\u6CD5","link":"#ognl-\u8868\u8FBE\u5F0F\u7528\u6CD5","children":[]},{"level":2,"title":"IDEA Plugin","slug":"idea-plugin","link":"#idea-plugin","children":[]},{"level":2,"title":"Arthas Properties","slug":"arthas-properties","link":"#arthas-properties","children":[]},{"level":2,"title":"\u4EE5 java agent \u65B9\u5F0F\u542F\u52A8","slug":"\u4EE5-java-agent-\u65B9\u5F0F\u542F\u52A8","link":"#\u4EE5-java-agent-\u65B9\u5F0F\u542F\u52A8","children":[]},{"level":2,"title":"Arthas Spring Boot Starter","slug":"arthas-spring-boot-starter","link":"#arthas-spring-boot-starter","children":[]},{"level":2,"title":"HTTP API","slug":"http-api","link":"#http-api","children":[]},{"level":2,"title":"\u6279\u5904\u7406\u529F\u80FD","slug":"\u6279\u5904\u7406\u529F\u80FD","link":"#\u6279\u5904\u7406\u529F\u80FD","children":[]},{"level":2,"title":"as.sh \u548C arthas-boot \u6280\u5DE7","slug":"as-sh-\u548C-arthas-boot-\u6280\u5DE7","link":"#as-sh-\u548C-arthas-boot-\u6280\u5DE7","children":[]},{"level":2,"title":"\u7528\u6237\u6570\u636E\u56DE\u62A5","slug":"\u7528\u6237\u6570\u636E\u56DE\u62A5","link":"#\u7528\u6237\u6570\u636E\u56DE\u62A5","children":[]}],"git":{"updatedTime":1692790199000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":3},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/advanced-use.md","version":"3.7.2"}');export{e as data};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,o as l,c,a,b as e,w as t,e as s,d,r}from"./app.98a29f3d.js";const p={},h=a("h1",{id:"other-features",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#other-features","aria-hidden":"true"},"#"),s(" Other features")],-1),u=a("h2",{id:"arthas-async-jobs",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-async-jobs","aria-hidden":"true"},"#"),s(" Arthas Async Jobs")],-1),b=a("p",null,"If you need to investigate an issue, but you are unsure about the exact time it occurs, you can run the monitoring command in the background and save the output to a log file.",-1),m=s("Arthas Async Jobs"),v=a("h2",{id:"log-the-output",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#log-the-output","aria-hidden":"true"},"#"),s(" Log the output")],-1),_=a("p",null,"All execution records are fully saved in the log file for subsequent analysis.",-1),k=s("log the output"),g=a("h2",{id:"docker",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#docker","aria-hidden":"true"},"#"),s(" Docker")],-1),f=a("p",null,"Arthas configuration reference for using in Docker containers.",-1),A=s("Docker"),x=a("h2",{id:"web-console",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#web-console","aria-hidden":"true"},"#"),s(" Web Console")],-1),w=a("p",null,"Arthas supports living inside a browser. The communication between arthas and browser is via websocket.",-1),y=s("Web Console"),j=a("h2",{id:"arthas-tunnel",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-tunnel","aria-hidden":"true"},"#"),s(" Arthas Tunnel")],-1),I=a("p",null,"Arthas Tunnel Server/Client enables remote management/connection to Java services across multiple servers.",-1),T=s("Arthas Tunnel"),S=a("h2",{id:"how-to-use-ognl",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#how-to-use-ognl","aria-hidden":"true"},"#"),s(" How to use ognl")],-1),P={href:"https://github.com/alibaba/arthas/issues/11",target:"_blank",rel:"noopener noreferrer"},B=s("Basic ognl example"),C={href:"https://github.com/alibaba/arthas/issues/71",target:"_blank",rel:"noopener noreferrer"},E=s("Ognl special uses"),J=a("h2",{id:"idea-plugin",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#idea-plugin","aria-hidden":"true"},"#"),s(" IDEA Plugin")],-1),D=a("p",null,"Build arthas commands more efficiently in the IntelliJ IDEA compiler.",-1),N=s("IDEA Plugin"),O=a("h2",{id:"arthas-properties",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-properties","aria-hidden":"true"},"#"),s(" Arthas Properties")],-1),H=a("p",null,"Arthas supports configuration options reference.",-1),L=s("Arthas Properties"),V=a("h2",{id:"start-as-a-java-agent",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#start-as-a-java-agent","aria-hidden":"true"},"#"),s(" Start as a Java Agent")],-1),U=s("Start as a Java Agent"),F=a("h2",{id:"arthas-spring-boot-starter",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-spring-boot-starter","aria-hidden":"true"},"#"),s(" Arthas Spring Boot Starter")],-1),R=a("p",null,"Starting with the application.",-1),W=s("Arthas Spring Boot Starter"),$=a("h2",{id:"http-api",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#http-api","aria-hidden":"true"},"#"),s(" HTTP API")],-1),q=a("p",null,"The Http API provides structured data and supports more complex interactive functions, making it easier to integrate Arthas into custom interfaces.",-1),z=s("HTTP API"),M=a("h2",{id:"batch-processing",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#batch-processing","aria-hidden":"true"},"#"),s(" Batch Processing")],-1),G=a("p",null,[s("It is convenient for running multiple commands in bulk with custom scripts. It can be used in conjunction with the "),a("code",null,"--select"),s(" parameter to specify the process name.")],-1),K=s("Batch Processing"),Q=d(`<h2 id="as-sh-and-arthas-boot-tips" tabindex="-1"><a class="header-anchor" href="#as-sh-and-arthas-boot-tips" aria-hidden="true">#</a> as.sh and arthas-boot tips</h2><ul><li>Select the process to be attached via the <code>select</code> option.</li></ul><p>Normally, <code>as.sh</code>/<code>arthas-boot.jar</code> needs to a pid, bacause the pid will change.</p><p>For example, with <code>math-game.jar</code> already started, use the <code>jps</code> command to see.</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ jps
|
||||
import{_ as i,o as l,c,a,b as e,w as t,e as s,d,r}from"./app.977e81c1.js";const p={},h=a("h1",{id:"other-features",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#other-features","aria-hidden":"true"},"#"),s(" Other features")],-1),u=a("h2",{id:"arthas-async-jobs",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-async-jobs","aria-hidden":"true"},"#"),s(" Arthas Async Jobs")],-1),b=a("p",null,"If you need to investigate an issue, but you are unsure about the exact time it occurs, you can run the monitoring command in the background and save the output to a log file.",-1),m=s("Arthas Async Jobs"),v=a("h2",{id:"log-the-output",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#log-the-output","aria-hidden":"true"},"#"),s(" Log the output")],-1),_=a("p",null,"All execution records are fully saved in the log file for subsequent analysis.",-1),k=s("log the output"),g=a("h2",{id:"docker",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#docker","aria-hidden":"true"},"#"),s(" Docker")],-1),f=a("p",null,"Arthas configuration reference for using in Docker containers.",-1),A=s("Docker"),x=a("h2",{id:"web-console",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#web-console","aria-hidden":"true"},"#"),s(" Web Console")],-1),w=a("p",null,"Arthas supports living inside a browser. The communication between arthas and browser is via websocket.",-1),y=s("Web Console"),j=a("h2",{id:"arthas-tunnel",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-tunnel","aria-hidden":"true"},"#"),s(" Arthas Tunnel")],-1),I=a("p",null,"Arthas Tunnel Server/Client enables remote management/connection to Java services across multiple servers.",-1),T=s("Arthas Tunnel"),S=a("h2",{id:"how-to-use-ognl",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#how-to-use-ognl","aria-hidden":"true"},"#"),s(" How to use ognl")],-1),P={href:"https://github.com/alibaba/arthas/issues/11",target:"_blank",rel:"noopener noreferrer"},B=s("Basic ognl example"),C={href:"https://github.com/alibaba/arthas/issues/71",target:"_blank",rel:"noopener noreferrer"},E=s("Ognl special uses"),J=a("h2",{id:"idea-plugin",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#idea-plugin","aria-hidden":"true"},"#"),s(" IDEA Plugin")],-1),D=a("p",null,"Build arthas commands more efficiently in the IntelliJ IDEA compiler.",-1),N=s("IDEA Plugin"),O=a("h2",{id:"arthas-properties",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-properties","aria-hidden":"true"},"#"),s(" Arthas Properties")],-1),H=a("p",null,"Arthas supports configuration options reference.",-1),L=s("Arthas Properties"),V=a("h2",{id:"start-as-a-java-agent",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#start-as-a-java-agent","aria-hidden":"true"},"#"),s(" Start as a Java Agent")],-1),U=s("Start as a Java Agent"),F=a("h2",{id:"arthas-spring-boot-starter",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#arthas-spring-boot-starter","aria-hidden":"true"},"#"),s(" Arthas Spring Boot Starter")],-1),R=a("p",null,"Starting with the application.",-1),W=s("Arthas Spring Boot Starter"),$=a("h2",{id:"http-api",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#http-api","aria-hidden":"true"},"#"),s(" HTTP API")],-1),q=a("p",null,"The Http API provides structured data and supports more complex interactive functions, making it easier to integrate Arthas into custom interfaces.",-1),z=s("HTTP API"),M=a("h2",{id:"batch-processing",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#batch-processing","aria-hidden":"true"},"#"),s(" Batch Processing")],-1),G=a("p",null,[s("It is convenient for running multiple commands in bulk with custom scripts. It can be used in conjunction with the "),a("code",null,"--select"),s(" parameter to specify the process name.")],-1),K=s("Batch Processing"),Q=d(`<h2 id="as-sh-and-arthas-boot-tips" tabindex="-1"><a class="header-anchor" href="#as-sh-and-arthas-boot-tips" aria-hidden="true">#</a> as.sh and arthas-boot tips</h2><ul><li>Select the process to be attached via the <code>select</code> option.</li></ul><p>Normally, <code>as.sh</code>/<code>arthas-boot.jar</code> needs to a pid, bacause the pid will change.</p><p>For example, with <code>math-game.jar</code> already started, use the <code>jps</code> command to see.</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ jps
|
||||
<span class="token number">58883</span> math-game.jar
|
||||
<span class="token number">58884</span> Jps
|
||||
</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><p>The <code>select</code> option allows you to specify a process name, which is very convenient.</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ ./as.sh <span class="token parameter variable">--select</span> math-game
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-463d120e","path":"/en/doc/advanced-use.html","title":"Other features","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Arthas Async Jobs","slug":"arthas-async-jobs","link":"#arthas-async-jobs","children":[]},{"level":2,"title":"Log the output","slug":"log-the-output","link":"#log-the-output","children":[]},{"level":2,"title":"Docker","slug":"docker","link":"#docker","children":[]},{"level":2,"title":"Web Console","slug":"web-console","link":"#web-console","children":[]},{"level":2,"title":"Arthas Tunnel","slug":"arthas-tunnel","link":"#arthas-tunnel","children":[]},{"level":2,"title":"How to use ognl","slug":"how-to-use-ognl","link":"#how-to-use-ognl","children":[]},{"level":2,"title":"IDEA Plugin","slug":"idea-plugin","link":"#idea-plugin","children":[]},{"level":2,"title":"Arthas Properties","slug":"arthas-properties","link":"#arthas-properties","children":[]},{"level":2,"title":"Start as a Java Agent","slug":"start-as-a-java-agent","link":"#start-as-a-java-agent","children":[]},{"level":2,"title":"Arthas Spring Boot Starter","slug":"arthas-spring-boot-starter","link":"#arthas-spring-boot-starter","children":[]},{"level":2,"title":"HTTP API","slug":"http-api","link":"#http-api","children":[]},{"level":2,"title":"Batch Processing","slug":"batch-processing","link":"#batch-processing","children":[]},{"level":2,"title":"as.sh and arthas-boot tips","slug":"as-sh-and-arthas-boot-tips","link":"#as-sh-and-arthas-boot-tips","children":[]},{"level":2,"title":"User data report","slug":"user-data-report","link":"#user-data-report","children":[]}],"git":{"updatedTime":1692845375000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/advanced-use.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-463d120e","path":"/en/doc/advanced-use.html","title":"Other features","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Arthas Async Jobs","slug":"arthas-async-jobs","link":"#arthas-async-jobs","children":[]},{"level":2,"title":"Log the output","slug":"log-the-output","link":"#log-the-output","children":[]},{"level":2,"title":"Docker","slug":"docker","link":"#docker","children":[]},{"level":2,"title":"Web Console","slug":"web-console","link":"#web-console","children":[]},{"level":2,"title":"Arthas Tunnel","slug":"arthas-tunnel","link":"#arthas-tunnel","children":[]},{"level":2,"title":"How to use ognl","slug":"how-to-use-ognl","link":"#how-to-use-ognl","children":[]},{"level":2,"title":"IDEA Plugin","slug":"idea-plugin","link":"#idea-plugin","children":[]},{"level":2,"title":"Arthas Properties","slug":"arthas-properties","link":"#arthas-properties","children":[]},{"level":2,"title":"Start as a Java Agent","slug":"start-as-a-java-agent","link":"#start-as-a-java-agent","children":[]},{"level":2,"title":"Arthas Spring Boot Starter","slug":"arthas-spring-boot-starter","link":"#arthas-spring-boot-starter","children":[]},{"level":2,"title":"HTTP API","slug":"http-api","link":"#http-api","children":[]},{"level":2,"title":"Batch Processing","slug":"batch-processing","link":"#batch-processing","children":[]},{"level":2,"title":"as.sh and arthas-boot tips","slug":"as-sh-and-arthas-boot-tips","link":"#as-sh-and-arthas-boot-tips","children":[]},{"level":2,"title":"User data report","slug":"user-data-report","link":"#user-data-report","children":[]}],"git":{"updatedTime":1692004748000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/advanced-use.md","version":"3.7.2"}');export{e as data};
|
@ -0,0 +1 @@
|
||||
const e=JSON.parse('{"key":"v-a736375c","path":"/en/doc/advice-class.html","title":"Fundamental Fields in Expressions","lang":"en-US","frontmatter":{},"excerpt":"","headers":[],"git":{"updatedTime":1698396365000,"contributors":[{"name":"haoyixing","email":"haoyixing@kuaishou.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/advice-class.md","version":"3.7.2"}');export{e as data};
|
@ -1 +0,0 @@
|
||||
const e=JSON.parse('{"key":"v-a736375c","path":"/en/doc/advice-class.html","title":"Fundamental Fields in Expressions","lang":"en-US","frontmatter":{},"excerpt":"","headers":[],"git":{"updatedTime":1658120060000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/advice-class.md","version":"3.7.2"}');export{e as data};
|
@ -1 +0,0 @@
|
||||
const e=JSON.parse('{"key":"v-46e53834","path":"/doc/advice-class.html","title":"\u8868\u8FBE\u5F0F\u6838\u5FC3\u53D8\u91CF","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[],"git":{"updatedTime":1658120060000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/advice-class.md","version":"3.7.2"}');export{e as data};
|
@ -0,0 +1 @@
|
||||
const a=JSON.parse('{"key":"v-46e53834","path":"/doc/advice-class.html","title":"\u8868\u8FBE\u5F0F\u6838\u5FC3\u53D8\u91CF","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[],"git":{"updatedTime":1698396365000,"contributors":[{"name":"haoyixing","email":"haoyixing@kuaishou.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/advice-class.md","version":"3.7.2"}');export{a as data};
|
@ -1,2 +1,2 @@
|
||||
import{_ as s,o,c as n,a as e,b as r,w as c,d,e as a,r as i}from"./app.98a29f3d.js";const l={},h=d(`<h1 id="\u4EE5-java-agent-\u7684\u65B9\u5F0F\u542F\u52A8" tabindex="-1"><a class="header-anchor" href="#\u4EE5-java-agent-\u7684\u65B9\u5F0F\u542F\u52A8" aria-hidden="true">#</a> \u4EE5 Java Agent \u7684\u65B9\u5F0F\u542F\u52A8</h1><p>\u901A\u5E38 Arthas \u662F\u4EE5\u52A8\u6001 attach \u7684\u65B9\u5F0F\u6765\u8BCA\u65AD\u5E94\u7528\uFF0C\u4F46\u4ECE<code>3.2.0</code>\u7248\u672C\u8D77\uFF0CArthas \u652F\u6301\u76F4\u63A5\u4EE5 java agent \u7684\u65B9\u5F0F\u542F\u52A8\u3002</p><p>\u6BD4\u5982\u4E0B\u8F7D\u5168\u91CF\u7684 arthas zip \u5305\uFF0C\u89E3\u538B\u4E4B\u540E\u4EE5 <code>-javaagent</code> \u7684\u53C2\u6570\u6307\u5B9A<code>arthas-agent.jar</code>\u6765\u542F\u52A8\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -javaagent:/tmp/test/arthas-agent.jar -jar math-game.jar
|
||||
import{_ as s,o,c as n,a as e,b as r,w as c,d,e as a,r as i}from"./app.977e81c1.js";const l={},h=d(`<h1 id="\u4EE5-java-agent-\u7684\u65B9\u5F0F\u542F\u52A8" tabindex="-1"><a class="header-anchor" href="#\u4EE5-java-agent-\u7684\u65B9\u5F0F\u542F\u52A8" aria-hidden="true">#</a> \u4EE5 Java Agent \u7684\u65B9\u5F0F\u542F\u52A8</h1><p>\u901A\u5E38 Arthas \u662F\u4EE5\u52A8\u6001 attach \u7684\u65B9\u5F0F\u6765\u8BCA\u65AD\u5E94\u7528\uFF0C\u4F46\u4ECE<code>3.2.0</code>\u7248\u672C\u8D77\uFF0CArthas \u652F\u6301\u76F4\u63A5\u4EE5 java agent \u7684\u65B9\u5F0F\u542F\u52A8\u3002</p><p>\u6BD4\u5982\u4E0B\u8F7D\u5168\u91CF\u7684 arthas zip \u5305\uFF0C\u89E3\u538B\u4E4B\u540E\u4EE5 <code>-javaagent</code> \u7684\u53C2\u6570\u6307\u5B9A<code>arthas-agent.jar</code>\u6765\u542F\u52A8\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -javaagent:/tmp/test/arthas-agent.jar -jar math-game.jar
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,4),_=a("\u9ED8\u8BA4\u7684\u914D\u7F6E\u9879\u5728\u89E3\u538B\u76EE\u5F55\u91CC\u7684"),p=e("code",null,"arthas.properties",-1),m=a("\u6587\u4EF6\u91CC\u3002\u53C2\u8003\uFF1A"),u=a("Arthas Properties"),v=e("p",null,"Java Agent \u673A\u5236\u53C2\u8003\uFF1A https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html",-1);function g(j,x){const t=i("RouterLink");return o(),n("div",null,[h,e("p",null,[_,p,m,r(t,{to:"/doc/arthas-properties.html"},{default:c(()=>[u]),_:1})]),v])}const b=s(l,[["render",g],["__file","agent.html.vue"]]);export{b as default};
|
@ -1,2 +1,2 @@
|
||||
import{_ as s,o as r,c as n,a as e,b as o,w as c,d as i,e as a,r as d}from"./app.98a29f3d.js";const l={},h=i(`<h1 id="start-as-a-java-agent" tabindex="-1"><a class="header-anchor" href="#start-as-a-java-agent" aria-hidden="true">#</a> Start as a Java Agent</h1><p>Usually Arthas dynamic attach the applications on the fly, but from version <code>3.2.0</code> onwards, Arthas supports starting directly as a java agent.</p><p>For example, download the full arthas zip package, decompress it and start it by specifying <code>arthas-agent.jar</code> with the parameter <code>-javaagent</code>.</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -javaagent:/tmp/test/arthas-agent.jar -jar math-game.jar
|
||||
import{_ as s,o as r,c as n,a as e,b as o,w as c,d as i,e as a,r as d}from"./app.977e81c1.js";const l={},h=i(`<h1 id="start-as-a-java-agent" tabindex="-1"><a class="header-anchor" href="#start-as-a-java-agent" aria-hidden="true">#</a> Start as a Java Agent</h1><p>Usually Arthas dynamic attach the applications on the fly, but from version <code>3.2.0</code> onwards, Arthas supports starting directly as a java agent.</p><p>For example, download the full arthas zip package, decompress it and start it by specifying <code>arthas-agent.jar</code> with the parameter <code>-javaagent</code>.</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -javaagent:/tmp/test/arthas-agent.jar -jar math-game.jar
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,4),p=a("The default configuration is in the "),m=e("code",null,"arthas.properties",-1),_=a(" file in the decompression directory. Reference: "),u=a("Arthas Properties"),g=e("p",null,"Reference: https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html",-1);function v(f,j){const t=d("RouterLink");return r(),n("div",null,[h,e("p",null,[p,m,_,o(t,{to:"/en/doc/arthas-properties.html"},{default:c(()=>[u]),_:1})]),g])}const y=s(l,[["render",v],["__file","agent.html.vue"]]);export{y as default};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{_ as e,o as t,c as a,d as s}from"./app.98a29f3d.js";const r={},i=s(`<h1 id="arthas-properties" tabindex="-1"><a class="header-anchor" href="#arthas-properties" aria-hidden="true">#</a> Arthas Properties</h1><p><code>arthas.properties</code>\u6587\u4EF6\u5728 arthas \u7684\u76EE\u5F55\u4E0B\u3002</p><ul><li>\u5982\u679C\u662F\u81EA\u52A8\u4E0B\u8F7D\u7684 arthas\uFF0C\u5219\u76EE\u5F55\u5728<code>~/.arthas/lib/3.x.x/arthas/</code>\u4E0B\u9762</li><li>\u5982\u679C\u662F\u4E0B\u8F7D\u7684\u5B8C\u6574\u5305\uFF0C\u5728 arthas \u89E3\u538B\u76EE\u5F55\u4E0B</li></ul><h2 id="\u652F\u6301\u7684\u914D\u7F6E\u9879" tabindex="-1"><a class="header-anchor" href="#\u652F\u6301\u7684\u914D\u7F6E\u9879" aria-hidden="true">#</a> \u652F\u6301\u7684\u914D\u7F6E\u9879</h2><div class="custom-container warning"><p class="custom-container-title">\u6CE8\u610F</p><p>\u6CE8\u610F\u914D\u7F6E\u5FC5\u987B\u662F<code>\u9A7C\u5CF0</code>\u7684\uFF0C\u548C spring boot \u7684<code>-</code>\u98CE\u683C\u4E0D\u4E00\u6837\u3002spring boot \u5E94\u7528\u624D\u540C\u65F6\u652F\u6301<code>\u9A7C\u5CF0</code> \u548C <code>-</code>\u98CE\u683C\u7684\u914D\u7F6E\u3002</p></div><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>#arthas.config.overrideAll=true
|
||||
import{_ as e,o as t,c as a,d as s}from"./app.977e81c1.js";const r={},i=s(`<h1 id="arthas-properties" tabindex="-1"><a class="header-anchor" href="#arthas-properties" aria-hidden="true">#</a> Arthas Properties</h1><p><code>arthas.properties</code>\u6587\u4EF6\u5728 arthas \u7684\u76EE\u5F55\u4E0B\u3002</p><ul><li>\u5982\u679C\u662F\u81EA\u52A8\u4E0B\u8F7D\u7684 arthas\uFF0C\u5219\u76EE\u5F55\u5728<code>~/.arthas/lib/3.x.x/arthas/</code>\u4E0B\u9762</li><li>\u5982\u679C\u662F\u4E0B\u8F7D\u7684\u5B8C\u6574\u5305\uFF0C\u5728 arthas \u89E3\u538B\u76EE\u5F55\u4E0B</li></ul><h2 id="\u652F\u6301\u7684\u914D\u7F6E\u9879" tabindex="-1"><a class="header-anchor" href="#\u652F\u6301\u7684\u914D\u7F6E\u9879" aria-hidden="true">#</a> \u652F\u6301\u7684\u914D\u7F6E\u9879</h2><div class="custom-container warning"><p class="custom-container-title">\u6CE8\u610F</p><p>\u6CE8\u610F\u914D\u7F6E\u5FC5\u987B\u662F<code>\u9A7C\u5CF0</code>\u7684\uFF0C\u548C spring boot \u7684<code>-</code>\u98CE\u683C\u4E0D\u4E00\u6837\u3002spring boot \u5E94\u7528\u624D\u540C\u65F6\u652F\u6301<code>\u9A7C\u5CF0</code> \u548C <code>-</code>\u98CE\u683C\u7684\u914D\u7F6E\u3002</p></div><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>#arthas.config.overrideAll=true
|
||||
arthas.telnetPort=3658
|
||||
arthas.httpPort=8563
|
||||
arthas.ip=127.0.0.1
|
@ -1,4 +1,4 @@
|
||||
import{_ as e,o as t,c as a,d as i}from"./app.98a29f3d.js";const o={},r=i(`<h1 id="arthas-properties" tabindex="-1"><a class="header-anchor" href="#arthas-properties" aria-hidden="true">#</a> Arthas Properties</h1><p>The <code>arthas.properties</code> file is in the arthas directory.</p><ul><li>If it is automatically downloaded arthas, the directory is under <code>~/.arthas/lib/3.x.x/arthas/</code></li><li>If it is a downloaded complete package, under the decompression directory of arthas</li></ul><h2 id="supported-configuration-items" tabindex="-1"><a class="header-anchor" href="#supported-configuration-items" aria-hidden="true">#</a> Supported configuration items</h2><div class="custom-container warning"><p class="custom-container-title">WARNING</p><p>Note that the configuration must be <code>camel case</code>, which is different from the <code>-</code> style of spring boot. Only the spring boot application supports both <code>camel case</code> and <code>-</code> style configuration.</p></div><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>#arthas.config.overrideAll=true
|
||||
import{_ as e,o as t,c as a,d as i}from"./app.977e81c1.js";const o={},r=i(`<h1 id="arthas-properties" tabindex="-1"><a class="header-anchor" href="#arthas-properties" aria-hidden="true">#</a> Arthas Properties</h1><p>The <code>arthas.properties</code> file is in the arthas directory.</p><ul><li>If it is automatically downloaded arthas, the directory is under <code>~/.arthas/lib/3.x.x/arthas/</code></li><li>If it is a downloaded complete package, under the decompression directory of arthas</li></ul><h2 id="supported-configuration-items" tabindex="-1"><a class="header-anchor" href="#supported-configuration-items" aria-hidden="true">#</a> Supported configuration items</h2><div class="custom-container warning"><p class="custom-container-title">WARNING</p><p>Note that the configuration must be <code>camel case</code>, which is different from the <code>-</code> style of spring boot. Only the spring boot application supports both <code>camel case</code> and <code>-</code> style configuration.</p></div><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>#arthas.config.overrideAll=true
|
||||
arthas.telnetPort=3658
|
||||
arthas.httpPort=8563
|
||||
arthas.ip=127.0.0.1
|
@ -1,4 +1,4 @@
|
||||
import{_ as r,o as i,c as t,a as e,b as d,d as a,e as s,r as l}from"./app.98a29f3d.js";const o={},c=a(`<h3 id="arthas3-0-\u7684\u65B0\u7279\u6027" tabindex="-1"><a class="header-anchor" href="#arthas3-0-\u7684\u65B0\u7279\u6027" aria-hidden="true">#</a> Arthas3.0 \u7684\u65B0\u7279\u6027</h3><h4 id="\u5728\u7EBF\u8BCA\u65AD\u529F\u80FD" tabindex="-1"><a class="header-anchor" href="#\u5728\u7EBF\u8BCA\u65AD\u529F\u80FD" aria-hidden="true">#</a> \u5728\u7EBF\u8BCA\u65AD\u529F\u80FD</h4><p>Arthas3.0 \u4E2D\u6700\u91CD\u8981\u7684\u7279\u6027\uFF0C\u4E0D\u9700\u8981\u767B\u9646\u673A\u5668\u5C31\u53EF\u4EE5\u5BF9\u5E94\u7528\u8FDB\u884C\u8BCA\u65AD\uFF0C\u4F53\u9A8C\u548C\u672C\u5730\u8BCA\u65AD\u5B8C\u5168\u4E00\u81F4</p><h5 id="\u4F7F\u7528\u6B65\u9AA4" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u6B65\u9AA4" aria-hidden="true">#</a> \u4F7F\u7528\u6B65\u9AA4</h5><p>TODO</p><h5 id="\u52A8\u56FE\u6F14\u793A" tabindex="-1"><a class="header-anchor" href="#\u52A8\u56FE\u6F14\u793A" aria-hidden="true">#</a> \u52A8\u56FE\u6F14\u793A</h5><p>TODO</p><h4 id="\u7BA1\u9053\u652F\u6301" tabindex="-1"><a class="header-anchor" href="#\u7BA1\u9053\u652F\u6301" aria-hidden="true">#</a> \u7BA1\u9053\u652F\u6301</h4><p>Arthas 3.0 \u5F00\u59CB\u652F\u6301\u7BA1\u9053, \u7387\u5148\u63D0\u4F9B\u4E86<code>grep</code>,<code>wc</code>,<code>plaintext</code>\u7684\u652F\u6301\u3002</p><h3 id="\u53BB-groovy-\u4F9D\u8D56" tabindex="-1"><a class="header-anchor" href="#\u53BB-groovy-\u4F9D\u8D56" aria-hidden="true">#</a> \u53BB groovy \u4F9D\u8D56</h3><p>groovy \u8868\u8FBE\u5F0F\u5728 arthas2.0 \u4E2D\u5927\u91CF\u4F7F\u7528\uFF0C\u4F8B\u5982 watch \u8868\u8FBE\u5F0F</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">watch</span> com.alibaba.sample.petstore.web.store.module.screen.ItemList <span class="token function">add</span> <span class="token string">"params + ' ' + returnObj"</span> params.size<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">==</span><span class="token number">2</span>
|
||||
import{_ as r,o as i,c as t,a as e,b as d,d as a,e as s,r as l}from"./app.977e81c1.js";const o={},c=a(`<h3 id="arthas3-0-\u7684\u65B0\u7279\u6027" tabindex="-1"><a class="header-anchor" href="#arthas3-0-\u7684\u65B0\u7279\u6027" aria-hidden="true">#</a> Arthas3.0 \u7684\u65B0\u7279\u6027</h3><h4 id="\u5728\u7EBF\u8BCA\u65AD\u529F\u80FD" tabindex="-1"><a class="header-anchor" href="#\u5728\u7EBF\u8BCA\u65AD\u529F\u80FD" aria-hidden="true">#</a> \u5728\u7EBF\u8BCA\u65AD\u529F\u80FD</h4><p>Arthas3.0 \u4E2D\u6700\u91CD\u8981\u7684\u7279\u6027\uFF0C\u4E0D\u9700\u8981\u767B\u9646\u673A\u5668\u5C31\u53EF\u4EE5\u5BF9\u5E94\u7528\u8FDB\u884C\u8BCA\u65AD\uFF0C\u4F53\u9A8C\u548C\u672C\u5730\u8BCA\u65AD\u5B8C\u5168\u4E00\u81F4</p><h5 id="\u4F7F\u7528\u6B65\u9AA4" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u6B65\u9AA4" aria-hidden="true">#</a> \u4F7F\u7528\u6B65\u9AA4</h5><p>TODO</p><h5 id="\u52A8\u56FE\u6F14\u793A" tabindex="-1"><a class="header-anchor" href="#\u52A8\u56FE\u6F14\u793A" aria-hidden="true">#</a> \u52A8\u56FE\u6F14\u793A</h5><p>TODO</p><h4 id="\u7BA1\u9053\u652F\u6301" tabindex="-1"><a class="header-anchor" href="#\u7BA1\u9053\u652F\u6301" aria-hidden="true">#</a> \u7BA1\u9053\u652F\u6301</h4><p>Arthas 3.0 \u5F00\u59CB\u652F\u6301\u7BA1\u9053, \u7387\u5148\u63D0\u4F9B\u4E86<code>grep</code>,<code>wc</code>,<code>plaintext</code>\u7684\u652F\u6301\u3002</p><h3 id="\u53BB-groovy-\u4F9D\u8D56" tabindex="-1"><a class="header-anchor" href="#\u53BB-groovy-\u4F9D\u8D56" aria-hidden="true">#</a> \u53BB groovy \u4F9D\u8D56</h3><p>groovy \u8868\u8FBE\u5F0F\u5728 arthas2.0 \u4E2D\u5927\u91CF\u4F7F\u7528\uFF0C\u4F8B\u5982 watch \u8868\u8FBE\u5F0F</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">watch</span> com.alibaba.sample.petstore.web.store.module.screen.ItemList <span class="token function">add</span> <span class="token string">"params + ' ' + returnObj"</span> params.size<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">==</span><span class="token number">2</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>\u5176\u4E2D<code>"params + ' ' + returnObj"</code>\u4EE5\u53CA<code>params.size()==2</code>\u80CC\u540E\u5176\u5B9E\u90FD\u4F7F\u7528\u4E86 groovy \u6765\u8FDB\u884C\u8868\u8FBE\u5F0F\u6C42\u503C\uFF0C\u5982\u679C\u53CD\u590D\u5927\u91CF\u7684\u8FD0\u884C\u8FD9\u4E9B\u8868\u8FBE\u5F0F\uFF0Cgroovy \u4F1A\u521B\u5EFA\u5927\u91CF\u7684 classloader\uFF0C\u6253\u6EE1 perm \u533A\u4ECE\u800C\u89E6\u53D1 FGC\u3002</p><p>\u4E3A\u4E86\u907F\u514D\u8FD9\u4E2A\u95EE\u9898\uFF0CArthas 3.0 \u4E2D\u4F7F\u7528\u4E86 ognl \u8FD9\u4E2A\u66F4\u52A0\u8F7B\u91CF\u7684\u8868\u8FBE\u5F0F\u6C42\u503C\u5E93\u6765\u4EE3\u66FF groovy\uFF0C\u5F7B\u5E95\u89E3\u51B3\u4E86 groovy \u5F15\u8D77\u7684 FGC \u98CE\u9669\u3002\u4F46\u7531\u4E8E\u8FD9\u4E2A\u66FF\u6362\uFF0C\u5BFC\u81F4\u539F\u6765\u4F7F\u7528 groovy \u811A\u672C\u7F16\u5199\u7684\u81EA\u5B9A\u4E49\u811A\u672C\u5931\u6548\u3002\u8FD9\u4E2A\u95EE\u9898\u7559\u5F85\u540E\u7EED\u89E3\u51B3\u3002</p>`,14),v=s("\u5728 3.0 \u4E2D\uFF0Cwatch \u547D\u4EE4\u7684\u8868\u8FBE\u5F0F\u90E8\u5206\u7684\u4E66\u5199\u6709\u4E86\u4E00\u4E9B\u6539\u53D8\uFF0C\u8BE6\u89C1"),u={href:"https://arthas.aliyun.com/doc/watch",target:"_blank",rel:"noopener noreferrer"},m=s("\u8FD9\u91CC"),h=a(`<h4 id="\u63D0\u5347-rt-\u7EDF\u8BA1\u7CBE\u5EA6" tabindex="-1"><a class="header-anchor" href="#\u63D0\u5347-rt-\u7EDF\u8BA1\u7CBE\u5EA6" aria-hidden="true">#</a> \u63D0\u5347 rt \u7EDF\u8BA1\u7CBE\u5EA6</h4><p>Arthas 2.0 \u4E2D\uFF0C\u7EDF\u8BA1 rt \u90FD\u662F\u4EE5<code>ms</code>\u4E3A\u5355\u4F4D\uFF0C\u5BF9\u4E8E\u67D0\u4E9B\u6BD4\u8F83\u5C0F\u7684\u65B9\u6CD5\u8C03\u7528\uFF0C\u8017\u65F6\u5728\u6BEB\u79D2\u4EE5\u4E0B\u7684\u90FD\u4F1A\u88AB\u8BA4\u4E3A\u662F 0ms\uFF0C\u9020\u6210 trace \u603B\u65F6\u95F4\u548C\u5404\u65B9\u6CD5\u7684\u65F6\u95F4\u76F8\u52A0\u4E0D\u4E00\u81F4\u7B49\u95EE\u9898\uFF08\u867D\u7136\u8FD9\u91CC\u9762\u786E\u5B9E\u4F1A\u6709\u8BEF\u5DEE\uFF0C\u4E3B\u8981 Arthas \u81EA\u8EAB\u7684\u5F00\u9500\uFF09\u3002Arthas 3.0 \u4E2D\u6240\u6709 rt \u7684\u5355\u4F4D\u7EDF\u4E00\u6539\u4E3A\u4F7F\u7528<code>ns</code>\u6765\u7EDF\u8BA1\uFF0C\u7CBE\u51C6\u6355\u83B7\u4F60\u7684\u65B9\u6CD5\u8017\u65F6\uFF0C\u8BA9 0ms \u8FD9\u6837\u65E0\u610F\u4E49\u7684\u7EDF\u8BA1\u6570\u636E\u4E0D\u518D\u51FA\u73B0\uFF01</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ tt -l
|
||||
INDEX TIMESTAMP COST(ms) IS-RET IS-EXP OBJECT CLASS METHOD
|
||||
------------------------------------------------------------------------------------------------------------------------------------------------------------
|
@ -1,4 +1,4 @@
|
||||
import{_ as o,o as s,c,a as e,b as a,e as t,d as i,r as d}from"./app.98a29f3d.js";const r={},l=e("h1",{id:"arthas-async-jobs",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#arthas-async-jobs","aria-hidden":"true"},"#"),t(" Arthas Async Jobs")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=en&id=case-async-jobs",target:"_blank",rel:"noopener noreferrer"},h=e("code",null,"Async Jobs",-1),p=t(" online tutorial"),b=t("Asynchronous jobs in arthas. The idea is borrowed from "),m={href:"http://man7.org/linux/man-pages/man1/jobs.1p.html",target:"_blank",rel:"noopener noreferrer"},g=t("linux jobs"),f=t("."),k=i(`<h2 id="_1-use-to-run-the-command-in-the-background" tabindex="-1"><a class="header-anchor" href="#_1-use-to-run-the-command-in-the-background" aria-hidden="true">#</a> 1. Use & to run the command in the background</h2><p>For example, execute the trace command in the background:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>trace Test t <span class="token operator">&</span>
|
||||
import{_ as o,o as s,c,a as e,b as a,e as t,d as i,r as d}from"./app.977e81c1.js";const r={},l=e("h1",{id:"arthas-async-jobs",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#arthas-async-jobs","aria-hidden":"true"},"#"),t(" Arthas Async Jobs")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=en&id=case-async-jobs",target:"_blank",rel:"noopener noreferrer"},h=e("code",null,"Async Jobs",-1),p=t(" online tutorial"),b=t("Asynchronous jobs in arthas. The idea is borrowed from "),m={href:"http://man7.org/linux/man-pages/man1/jobs.1p.html",target:"_blank",rel:"noopener noreferrer"},g=t("linux jobs"),f=t("."),k=i(`<h2 id="_1-use-to-run-the-command-in-the-background" tabindex="-1"><a class="header-anchor" href="#_1-use-to-run-the-command-in-the-background" aria-hidden="true">#</a> 1. Use & to run the command in the background</h2><p>For example, execute the trace command in the background:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>trace Test t <span class="token operator">&</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>By doing this, the current command is put to the background to run, you can continue to execute other commands in the console.</p><h2 id="_2-list-background-jobs" tabindex="-1"><a class="header-anchor" href="#_2-list-background-jobs" aria-hidden="true">#</a> 2. List background jobs</h2><p>If you want to list all background jobs, you can execute the <code>jobs</code> command and the results are as follows:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token function">jobs</span>
|
||||
<span class="token punctuation">[</span><span class="token number">10</span><span class="token punctuation">]</span>*
|
||||
Stopped <span class="token function">watch</span> com.taobao.container.Test <span class="token builtin class-name">test</span> <span class="token string">"params[0].{? #this.name == null }"</span> <span class="token parameter variable">-x</span> <span class="token number">2</span>
|
@ -1 +1 @@
|
||||
const l=JSON.parse('{"key":"v-4f82df66","path":"/doc/async.html","title":"Arthas \u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"1. \u4F7F\u7528&\u5728\u540E\u53F0\u6267\u884C\u4EFB\u52A1","slug":"_1-\u4F7F\u7528-\u5728\u540E\u53F0\u6267\u884C\u4EFB\u52A1","link":"#_1-\u4F7F\u7528-\u5728\u540E\u53F0\u6267\u884C\u4EFB\u52A1","children":[]},{"level":2,"title":"2. \u901A\u8FC7 jobs \u67E5\u770B\u4EFB\u52A1","slug":"_2-\u901A\u8FC7-jobs-\u67E5\u770B\u4EFB\u52A1","link":"#_2-\u901A\u8FC7-jobs-\u67E5\u770B\u4EFB\u52A1","children":[]},{"level":2,"title":"3. \u4EFB\u52A1\u6682\u505C\u548C\u53D6\u6D88","slug":"_3-\u4EFB\u52A1\u6682\u505C\u548C\u53D6\u6D88","link":"#_3-\u4EFB\u52A1\u6682\u505C\u548C\u53D6\u6D88","children":[]},{"level":2,"title":"4. fg\u3001bg \u547D\u4EE4\uFF0C\u5C06\u547D\u4EE4\u8F6C\u5230\u524D\u53F0\u3001\u540E\u53F0\u7EE7\u7EED\u6267\u884C","slug":"_4-fg\u3001bg-\u547D\u4EE4-\u5C06\u547D\u4EE4\u8F6C\u5230\u524D\u53F0\u3001\u540E\u53F0\u7EE7\u7EED\u6267\u884C","link":"#_4-fg\u3001bg-\u547D\u4EE4-\u5C06\u547D\u4EE4\u8F6C\u5230\u524D\u53F0\u3001\u540E\u53F0\u7EE7\u7EED\u6267\u884C","children":[]},{"level":2,"title":"5. \u4EFB\u52A1\u8F93\u51FA\u91CD\u5B9A\u5411","slug":"_5-\u4EFB\u52A1\u8F93\u51FA\u91CD\u5B9A\u5411","link":"#_5-\u4EFB\u52A1\u8F93\u51FA\u91CD\u5B9A\u5411","children":[]},{"level":2,"title":"6. \u505C\u6B62\u547D\u4EE4","slug":"_6-\u505C\u6B62\u547D\u4EE4","link":"#_6-\u505C\u6B62\u547D\u4EE4","children":[]},{"level":2,"title":"7. \u5176\u4ED6","slug":"_7-\u5176\u4ED6","link":"#_7-\u5176\u4ED6","children":[]}],"git":{"updatedTime":1663055906000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":2}]},"filePathRelative":"doc/async.md","version":"3.7.2"}');export{l as data};
|
||||
const l=JSON.parse('{"key":"v-4f82df66","path":"/doc/async.html","title":"Arthas \u540E\u53F0\u5F02\u6B65\u4EFB\u52A1","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"1. \u4F7F\u7528&\u5728\u540E\u53F0\u6267\u884C\u4EFB\u52A1","slug":"_1-\u4F7F\u7528-\u5728\u540E\u53F0\u6267\u884C\u4EFB\u52A1","link":"#_1-\u4F7F\u7528-\u5728\u540E\u53F0\u6267\u884C\u4EFB\u52A1","children":[]},{"level":2,"title":"2. \u901A\u8FC7 jobs \u67E5\u770B\u4EFB\u52A1","slug":"_2-\u901A\u8FC7-jobs-\u67E5\u770B\u4EFB\u52A1","link":"#_2-\u901A\u8FC7-jobs-\u67E5\u770B\u4EFB\u52A1","children":[]},{"level":2,"title":"3. \u4EFB\u52A1\u6682\u505C\u548C\u53D6\u6D88","slug":"_3-\u4EFB\u52A1\u6682\u505C\u548C\u53D6\u6D88","link":"#_3-\u4EFB\u52A1\u6682\u505C\u548C\u53D6\u6D88","children":[]},{"level":2,"title":"4. fg\u3001bg \u547D\u4EE4\uFF0C\u5C06\u547D\u4EE4\u8F6C\u5230\u524D\u53F0\u3001\u540E\u53F0\u7EE7\u7EED\u6267\u884C","slug":"_4-fg\u3001bg-\u547D\u4EE4-\u5C06\u547D\u4EE4\u8F6C\u5230\u524D\u53F0\u3001\u540E\u53F0\u7EE7\u7EED\u6267\u884C","link":"#_4-fg\u3001bg-\u547D\u4EE4-\u5C06\u547D\u4EE4\u8F6C\u5230\u524D\u53F0\u3001\u540E\u53F0\u7EE7\u7EED\u6267\u884C","children":[]},{"level":2,"title":"5. \u4EFB\u52A1\u8F93\u51FA\u91CD\u5B9A\u5411","slug":"_5-\u4EFB\u52A1\u8F93\u51FA\u91CD\u5B9A\u5411","link":"#_5-\u4EFB\u52A1\u8F93\u51FA\u91CD\u5B9A\u5411","children":[]},{"level":2,"title":"6. \u505C\u6B62\u547D\u4EE4","slug":"_6-\u505C\u6B62\u547D\u4EE4","link":"#_6-\u505C\u6B62\u547D\u4EE4","children":[]},{"level":2,"title":"7. \u5176\u4ED6","slug":"_7-\u5176\u4ED6","link":"#_7-\u5176\u4ED6","children":[]}],"git":{"updatedTime":1686552460000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":2},{"name":"Church","email":"qq892525597qq@163.com","commits":1}]},"filePathRelative":"doc/async.md","version":"3.7.2"}');export{l as data};
|
@ -1,4 +1,4 @@
|
||||
import{_ as t,o as i,c as o,a as e,b as d,d as a,e as n,r}from"./app.98a29f3d.js";const c={},l=a(`<h1 id="auth" tabindex="-1"><a class="header-anchor" href="#auth" aria-hidden="true">#</a> auth</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u9A8C\u8BC1\u5F53\u524D\u4F1A\u8BDD</p></div><h2 id="\u914D\u7F6E\u7528\u6237\u540D\u548C\u5BC6\u7801" tabindex="-1"><a class="header-anchor" href="#\u914D\u7F6E\u7528\u6237\u540D\u548C\u5BC6\u7801" aria-hidden="true">#</a> \u914D\u7F6E\u7528\u6237\u540D\u548C\u5BC6\u7801</h2><p>\u5728 attach \u65F6\uFF0C\u53EF\u4EE5\u5728\u547D\u4EE4\u884C\u6307\u5B9A\u5BC6\u7801\u3002\u6BD4\u5982\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -jar arthas-boot.jar --password ppp
|
||||
import{_ as t,o as i,c as o,a as e,b as d,d as a,e as n,r}from"./app.977e81c1.js";const c={},l=a(`<h1 id="auth" tabindex="-1"><a class="header-anchor" href="#auth" aria-hidden="true">#</a> auth</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u9A8C\u8BC1\u5F53\u524D\u4F1A\u8BDD</p></div><h2 id="\u914D\u7F6E\u7528\u6237\u540D\u548C\u5BC6\u7801" tabindex="-1"><a class="header-anchor" href="#\u914D\u7F6E\u7528\u6237\u540D\u548C\u5BC6\u7801" aria-hidden="true">#</a> \u914D\u7F6E\u7528\u6237\u540D\u548C\u5BC6\u7801</h2><p>\u5728 attach \u65F6\uFF0C\u53EF\u4EE5\u5728\u547D\u4EE4\u884C\u6307\u5B9A\u5BC6\u7801\u3002\u6BD4\u5982\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -jar arthas-boot.jar --password ppp
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>\u53EF\u4EE5\u901A\u8FC7 <code>--username</code> \u9009\u9879\u6765\u6307\u5B9A\u7528\u6237\uFF0C\u9ED8\u8BA4\u503C\u662F<code>arthas</code>\u3002</p></li><li><p>\u4E5F\u53EF\u4EE5\u5728 <code>arthas.properties</code> \u91CC\u4E2D\u914D\u7F6E username/password\u3002\u547D\u4EE4\u884C\u7684\u4F18\u5148\u7EA7\u5927\u4E8E\u914D\u7F6E\u6587\u4EF6\u3002</p></li><li><p>\u5982\u679C\u53EA\u914D\u7F6E<code>username</code>\uFF0C\u6CA1\u6709\u914D\u7F6E<code>password</code>\uFF0C\u5219\u4F1A\u751F\u6210\u968F\u673A\u5BC6\u7801\uFF0C\u6253\u5370\u5728<code>~/logs/arthas/arthas.log</code>\u4E2D</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>Using generated security password: 0vUBJpRIppkKuZ7dYzYqOKtranj4unGh
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div></li></ul><h2 id="\u672C\u5730\u8FDE\u63A5\u4E0D\u9274\u6743" tabindex="-1"><a class="header-anchor" href="#\u672C\u5730\u8FDE\u63A5\u4E0D\u9274\u6743" aria-hidden="true">#</a> \u672C\u5730\u8FDE\u63A5\u4E0D\u9274\u6743</h2><p>\u9ED8\u8BA4\u60C5\u51B5\u4E0B\uFF0C\u5728<code>arthas.properties</code>\u6587\u4EF6\u91CC\u6709\u914D\u7F6E\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>arthas.localConnectionNonAuth=true
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>\u5F53\u914D\u7F6E\u5BC6\u7801\u65F6\uFF0C\u4F7F\u7528\u672C\u5730\u8FDE\u63A5\uFF0C\u4E5F\u4E0D\u9700\u8981\u9274\u6743\u3002\u9ED8\u8BA4\u914D\u7F6E\u503C\u662F true\uFF0C\u65B9\u4FBF\u672C\u5730\u8FDE\u63A5\u4F7F\u7528\u3002\u53EA\u6709\u8FDC\u7A0B\u8FDE\u63A5\u65F6\uFF0C\u624D\u9700\u8981\u9274\u6743\u3002</p><h2 id="\u5728-telnet-console-\u91CC\u9274\u6743" tabindex="-1"><a class="header-anchor" href="#\u5728-telnet-console-\u91CC\u9274\u6743" aria-hidden="true">#</a> \u5728 telnet console \u91CC\u9274\u6743</h2><p>\u8FDE\u63A5\u5230 arthas \u540E\uFF0C\u76F4\u63A5\u6267\u884C\u547D\u4EE4\u4F1A\u63D0\u793A\u9700\u8981\u9274\u6743\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@37430<span class="token punctuation">]</span>$ <span class="token builtin class-name">help</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as i,c as o,a as e,b as r,d as a,e as n,r as c}from"./app.98a29f3d.js";const d={},l=a(`<h1 id="auth" tabindex="-1"><a class="header-anchor" href="#auth" aria-hidden="true">#</a> auth</h1><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Authenticates the current session</p></div><h2 id="configure-username-and-password" tabindex="-1"><a class="header-anchor" href="#configure-username-and-password" aria-hidden="true">#</a> Configure username and password</h2><p>When attaching, you can specify a password on the command line. such as:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -jar arthas-boot.jar --password ppp
|
||||
import{_ as s,o as i,c as o,a as e,b as r,d as a,e as n,r as c}from"./app.977e81c1.js";const d={},l=a(`<h1 id="auth" tabindex="-1"><a class="header-anchor" href="#auth" aria-hidden="true">#</a> auth</h1><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Authenticates the current session</p></div><h2 id="configure-username-and-password" tabindex="-1"><a class="header-anchor" href="#configure-username-and-password" aria-hidden="true">#</a> Configure username and password</h2><p>When attaching, you can specify a password on the command line. such as:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>java -jar arthas-boot.jar --password ppp
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>The user can be specified by the <code>--username</code> option, the default value is <code>arthas</code>.</p></li><li><p>You can also configure username/password in <code>arthas.properties</code>. The priority of the command line is higher than that of the configuration file.</p></li><li><p>If only <code>username</code> is configured and no <code>password</code> is configured, a random password will be generated and printed in <code>~/logs/arthas/arthas.log</code></p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>Using generated security password: 0vUBJpRIppkKuZ7dYzYqOKtranj4unGh
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div></li></ul><h2 id="local-connection-does-not-require-authentication" tabindex="-1"><a class="header-anchor" href="#local-connection-does-not-require-authentication" aria-hidden="true">#</a> Local connection does not require authentication</h2><p>By default, there are configurations in the <code>arthas.properties</code> file:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>arthas.localConnectionNonAuth=true
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>When the password is configured, connect from localhost, the authentication is not required. The default configuration value is true, which is convenient for local connection. Authentication is only required when connecting remotely.</p><h2 id="authenticate-in-the-telnet-console" tabindex="-1"><a class="header-anchor" href="#authenticate-in-the-telnet-console" aria-hidden="true">#</a> Authenticate in the telnet console</h2><p>After connecting to arthas, directly executing the command will prompt for authentication:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@37430<span class="token punctuation">]</span>$ <span class="token builtin class-name">help</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as e,o as a,c as s,d as n}from"./app.98a29f3d.js";const t={},i=n(`<h1 id="base64" tabindex="-1"><a class="header-anchor" href="#base64" aria-hidden="true">#</a> base64</h1><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Encode and decode using Base64 representation.</p></div><h2 id="encode-to-base64" tabindex="-1"><a class="header-anchor" href="#encode-to-base64" aria-hidden="true">#</a> Encode to base64</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@70070<span class="token punctuation">]</span>$ <span class="token builtin class-name">echo</span> <span class="token string">'abc'</span> <span class="token operator">></span> /tmp/test.txt
|
||||
import{_ as e,o as a,c as s,d as n}from"./app.977e81c1.js";const t={},i=n(`<h1 id="base64" tabindex="-1"><a class="header-anchor" href="#base64" aria-hidden="true">#</a> base64</h1><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Encode and decode using Base64 representation.</p></div><h2 id="encode-to-base64" tabindex="-1"><a class="header-anchor" href="#encode-to-base64" aria-hidden="true">#</a> Encode to base64</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@70070<span class="token punctuation">]</span>$ <span class="token builtin class-name">echo</span> <span class="token string">'abc'</span> <span class="token operator">></span> /tmp/test.txt
|
||||
<span class="token punctuation">[</span>arthas@70070<span class="token punctuation">]</span>$ <span class="token function">cat</span> /tmp/test.txt
|
||||
abc
|
||||
|
@ -1,4 +1,4 @@
|
||||
import{_ as a,o as e,c as s,d as n}from"./app.98a29f3d.js";const t={},i=n(`<h1 id="base64" tabindex="-1"><a class="header-anchor" href="#base64" aria-hidden="true">#</a> base64</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>base64 \u7F16\u7801\u8F6C\u6362\uFF0C\u548C linux \u91CC\u7684 base64 \u547D\u4EE4\u7C7B\u4F3C\u3002</p></div><h2 id="\u5BF9\u6587\u4EF6\u8FDB\u884C-base64-\u7F16\u7801" tabindex="-1"><a class="header-anchor" href="#\u5BF9\u6587\u4EF6\u8FDB\u884C-base64-\u7F16\u7801" aria-hidden="true">#</a> \u5BF9\u6587\u4EF6\u8FDB\u884C base64 \u7F16\u7801</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@70070<span class="token punctuation">]</span>$ <span class="token builtin class-name">echo</span> <span class="token string">'abc'</span> <span class="token operator">></span> /tmp/test.txt
|
||||
import{_ as a,o as e,c as s,d as n}from"./app.977e81c1.js";const t={},i=n(`<h1 id="base64" tabindex="-1"><a class="header-anchor" href="#base64" aria-hidden="true">#</a> base64</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>base64 \u7F16\u7801\u8F6C\u6362\uFF0C\u548C linux \u91CC\u7684 base64 \u547D\u4EE4\u7C7B\u4F3C\u3002</p></div><h2 id="\u5BF9\u6587\u4EF6\u8FDB\u884C-base64-\u7F16\u7801" tabindex="-1"><a class="header-anchor" href="#\u5BF9\u6587\u4EF6\u8FDB\u884C-base64-\u7F16\u7801" aria-hidden="true">#</a> \u5BF9\u6587\u4EF6\u8FDB\u884C base64 \u7F16\u7801</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@70070<span class="token punctuation">]</span>$ <span class="token builtin class-name">echo</span> <span class="token string">'abc'</span> <span class="token operator">></span> /tmp/test.txt
|
||||
<span class="token punctuation">[</span>arthas@70070<span class="token punctuation">]</span>$ <span class="token function">cat</span> /tmp/test.txt
|
||||
abc
|
||||
|
@ -1,4 +1,4 @@
|
||||
import{_ as n,o as c,c as o,a as e,b as i,w as d,d as a,e as s,r}from"./app.98a29f3d.js";const l={},h=a(`<h1 id="batch-processing" tabindex="-1"><a class="header-anchor" href="#batch-processing" aria-hidden="true">#</a> Batch Processing</h1><p>With the help of Batch Processing, you can run multiple commands in batch and get the final result at the end. The process name can be specified using the \u201C\u2013select\u201D parameter.</p><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><h3 id="step-1-create-the-script" tabindex="-1"><a class="header-anchor" href="#step-1-create-the-script" aria-hidden="true">#</a> Step 1: Create the script</h3><p>Create a <code>test.as</code> script suffixed with <code>as</code>. Here <code>as</code> is suggested for the suffix of the filename, but in fact any suffix is acceptable.</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>\u279C arthas git:<span class="token punctuation">(</span>develop<span class="token punctuation">)</span> <span class="token function">cat</span> /var/tmp/test.as
|
||||
import{_ as n,o as c,c as o,a as e,b as i,w as d,d as a,e as s,r}from"./app.977e81c1.js";const l={},h=a(`<h1 id="batch-processing" tabindex="-1"><a class="header-anchor" href="#batch-processing" aria-hidden="true">#</a> Batch Processing</h1><p>With the help of Batch Processing, you can run multiple commands in batch and get the final result at the end. The process name can be specified using the \u201C\u2013select\u201D parameter.</p><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><h3 id="step-1-create-the-script" tabindex="-1"><a class="header-anchor" href="#step-1-create-the-script" aria-hidden="true">#</a> Step 1: Create the script</h3><p>Create a <code>test.as</code> script suffixed with <code>as</code>. Here <code>as</code> is suggested for the suffix of the filename, but in fact any suffix is acceptable.</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>\u279C arthas git:<span class="token punctuation">(</span>develop<span class="token punctuation">)</span> <span class="token function">cat</span> /var/tmp/test.as
|
||||
<span class="token builtin class-name">help</span>
|
||||
dashboard <span class="token parameter variable">-n</span> <span class="token number">1</span>
|
||||
session
|
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-cc8f4ae6","path":"/doc/batch-support.html","title":"\u6279\u5904\u7406\u529F\u80FD","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u4F7F\u7528\u65B9\u6CD5","slug":"\u4F7F\u7528\u65B9\u6CD5","link":"#\u4F7F\u7528\u65B9\u6CD5","children":[{"level":3,"title":"\u7B2C\u4E00\u6B65\uFF1A\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","slug":"\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","link":"#\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","children":[]},{"level":3,"title":"\u7B2C\u4E8C\u6B65\uFF1A\u8FD0\u884C\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","slug":"\u7B2C\u4E8C\u6B65-\u8FD0\u884C\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","link":"#\u7B2C\u4E8C\u6B65-\u8FD0\u884C\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","children":[]},{"level":3,"title":"\u7B2C\u4E09\u6B65\uFF1A\u67E5\u770B\u8FD0\u884C\u7ED3\u679C","slug":"\u7B2C\u4E09\u6B65-\u67E5\u770B\u8FD0\u884C\u7ED3\u679C","link":"#\u7B2C\u4E09\u6B65-\u67E5\u770B\u8FD0\u884C\u7ED3\u679C","children":[]}]}],"git":{"updatedTime":1692845375000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/batch-support.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-cc8f4ae6","path":"/doc/batch-support.html","title":"\u6279\u5904\u7406\u529F\u80FD","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u4F7F\u7528\u65B9\u6CD5","slug":"\u4F7F\u7528\u65B9\u6CD5","link":"#\u4F7F\u7528\u65B9\u6CD5","children":[{"level":3,"title":"\u7B2C\u4E00\u6B65\uFF1A\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","slug":"\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","link":"#\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","children":[]},{"level":3,"title":"\u7B2C\u4E8C\u6B65\uFF1A\u8FD0\u884C\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","slug":"\u7B2C\u4E8C\u6B65-\u8FD0\u884C\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","link":"#\u7B2C\u4E8C\u6B65-\u8FD0\u884C\u4F60\u7684\u6279\u5904\u7406\u811A\u672C","children":[]},{"level":3,"title":"\u7B2C\u4E09\u6B65\uFF1A\u67E5\u770B\u8FD0\u884C\u7ED3\u679C","slug":"\u7B2C\u4E09\u6B65-\u67E5\u770B\u8FD0\u884C\u7ED3\u679C","link":"#\u7B2C\u4E09\u6B65-\u67E5\u770B\u8FD0\u884C\u7ED3\u679C","children":[]}]}],"git":{"updatedTime":1692004748000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/batch-support.md","version":"3.7.2"}');export{e as data};
|
@ -1,4 +1,4 @@
|
||||
import{_ as t,o as d,c as i,a as e,b as o,w as c,d as a,e as s,r}from"./app.98a29f3d.js";const l={},p=a('<h1 id="\u6279\u5904\u7406\u529F\u80FD" tabindex="-1"><a class="header-anchor" href="#\u6279\u5904\u7406\u529F\u80FD" aria-hidden="true">#</a> \u6279\u5904\u7406\u529F\u80FD</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u901A\u8FC7\u6279\u5904\u7406\u529F\u80FD\uFF0Carthas \u652F\u6301\u4E00\u6B21\u6027\u6279\u91CF\u8FD0\u884C\u591A\u4E2A\u547D\u4EE4\uFF0C\u5E76\u53D6\u5F97\u547D\u4EE4\u6267\u884C\u7684\u7ED3\u679C\u3002\u53EF\u7ED3\u5408 <code>--select</code> \u53C2\u6570\u53EF\u4EE5\u6307\u5B9A\u8FDB\u7A0B\u540D\u5B57\u4E00\u8D77\u4F7F\u7528\u3002</p></div><h2 id="\u4F7F\u7528\u65B9\u6CD5" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u65B9\u6CD5" aria-hidden="true">#</a> \u4F7F\u7528\u65B9\u6CD5</h2><h3 id="\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C" tabindex="-1"><a class="header-anchor" href="#\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C" aria-hidden="true">#</a> \u7B2C\u4E00\u6B65\uFF1A\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C</h3><p>\u8FD9\u91CC\u6211\u4EEC\u65B0\u5EFA\u4E86\u4E00\u4E2A<code>test.as</code>\u811A\u672C\uFF0C\u4E3A\u4E86\u89C4\u8303\uFF0C\u6211\u4EEC\u91C7\u7528\u4E86.as \u540E\u7F00\u540D\uFF0C\u4F46\u4E8B\u5B9E\u4E0A\u4EFB\u610F\u7684\u6587\u672C\u6587\u4EF6\u90FD ok\u3002</p>',5),h={class:"custom-container tip"},u=e("p",{class:"custom-container-title"},"\u63D0\u793A",-1),m=e("li",null,"\u76EE\u524D\u9700\u8981\u6BCF\u4E2A\u547D\u4EE4\u5360\u4E00\u884C",-1),v=e("li",null,[s("dashboard \u52A1\u5FC5\u6307\u5B9A\u6267\u884C\u6B21\u6570 ("),e("code",null,"-n"),s(")\uFF0C\u5426\u5219\u4F1A\u5BFC\u81F4\u6279\u5904\u7406\u811A\u672C\u65E0\u6CD5\u7EC8\u6B62")],-1),_=e("li",null,[s("watch/tt/trace/monitor/stack \u7B49\u547D\u4EE4\u52A1\u5FC5\u6307\u5B9A\u6267\u884C\u6B21\u6570 ("),e("code",null,"-n"),s(")\uFF0C\u5426\u5219\u4F1A\u5BFC\u81F4\u6279\u5904\u7406\u811A\u672C\u65E0\u6CD5\u7EC8\u6B62")],-1),b=s("\u53EF\u4EE5\u4F7F\u7528\u5F02\u6B65\u540E\u53F0\u4EFB\u52A1\uFF0C\u5982 "),g=e("code",null,"watch c.t.X test returnObj > &",-1),k=s("\uFF0C\u8BA9\u547D\u4EE4\u4E00\u76F4\u5728\u540E\u53F0\u8FD0\u884C\uFF0C\u901A\u8FC7\u65E5\u5FD7\u83B7\u53D6\u7ED3\u679C\uFF0C"),x=s("\u83B7\u53D6\u66F4\u591A\u5F02\u6B65\u4EFB\u52A1\u7684\u4FE1\u606F"),f=a(`<div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>\u279C arthas git:(develop) cat /var/tmp/test.as
|
||||
import{_ as t,o as d,c as i,a as e,b as o,w as c,d as a,e as s,r}from"./app.977e81c1.js";const l={},p=a('<h1 id="\u6279\u5904\u7406\u529F\u80FD" tabindex="-1"><a class="header-anchor" href="#\u6279\u5904\u7406\u529F\u80FD" aria-hidden="true">#</a> \u6279\u5904\u7406\u529F\u80FD</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u901A\u8FC7\u6279\u5904\u7406\u529F\u80FD\uFF0Carthas \u652F\u6301\u4E00\u6B21\u6027\u6279\u91CF\u8FD0\u884C\u591A\u4E2A\u547D\u4EE4\uFF0C\u5E76\u53D6\u5F97\u547D\u4EE4\u6267\u884C\u7684\u7ED3\u679C\u3002\u53EF\u7ED3\u5408 <code>--select</code> \u53C2\u6570\u53EF\u4EE5\u6307\u5B9A\u8FDB\u7A0B\u540D\u5B57\u4E00\u8D77\u4F7F\u7528\u3002</p></div><h2 id="\u4F7F\u7528\u65B9\u6CD5" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u65B9\u6CD5" aria-hidden="true">#</a> \u4F7F\u7528\u65B9\u6CD5</h2><h3 id="\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C" tabindex="-1"><a class="header-anchor" href="#\u7B2C\u4E00\u6B65-\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C" aria-hidden="true">#</a> \u7B2C\u4E00\u6B65\uFF1A\u521B\u5EFA\u4F60\u7684\u6279\u5904\u7406\u811A\u672C</h3><p>\u8FD9\u91CC\u6211\u4EEC\u65B0\u5EFA\u4E86\u4E00\u4E2A<code>test.as</code>\u811A\u672C\uFF0C\u4E3A\u4E86\u89C4\u8303\uFF0C\u6211\u4EEC\u91C7\u7528\u4E86.as \u540E\u7F00\u540D\uFF0C\u4F46\u4E8B\u5B9E\u4E0A\u4EFB\u610F\u7684\u6587\u672C\u6587\u4EF6\u90FD ok\u3002</p>',5),h={class:"custom-container tip"},u=e("p",{class:"custom-container-title"},"\u63D0\u793A",-1),m=e("li",null,"\u76EE\u524D\u9700\u8981\u6BCF\u4E2A\u547D\u4EE4\u5360\u4E00\u884C",-1),v=e("li",null,[s("dashboard \u52A1\u5FC5\u6307\u5B9A\u6267\u884C\u6B21\u6570 ("),e("code",null,"-n"),s(")\uFF0C\u5426\u5219\u4F1A\u5BFC\u81F4\u6279\u5904\u7406\u811A\u672C\u65E0\u6CD5\u7EC8\u6B62")],-1),_=e("li",null,[s("watch/tt/trace/monitor/stack \u7B49\u547D\u4EE4\u52A1\u5FC5\u6307\u5B9A\u6267\u884C\u6B21\u6570 ("),e("code",null,"-n"),s(")\uFF0C\u5426\u5219\u4F1A\u5BFC\u81F4\u6279\u5904\u7406\u811A\u672C\u65E0\u6CD5\u7EC8\u6B62")],-1),b=s("\u53EF\u4EE5\u4F7F\u7528\u5F02\u6B65\u540E\u53F0\u4EFB\u52A1\uFF0C\u5982 "),g=e("code",null,"watch c.t.X test returnObj > &",-1),k=s("\uFF0C\u8BA9\u547D\u4EE4\u4E00\u76F4\u5728\u540E\u53F0\u8FD0\u884C\uFF0C\u901A\u8FC7\u65E5\u5FD7\u83B7\u53D6\u7ED3\u679C\uFF0C"),x=s("\u83B7\u53D6\u66F4\u591A\u5F02\u6B65\u4EFB\u52A1\u7684\u4FE1\u606F"),f=a(`<div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>\u279C arthas git:(develop) cat /var/tmp/test.as
|
||||
help
|
||||
dashboard -n 1
|
||||
session
|
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-765e30be","path":"/en/doc/batch-support.html","title":"Batch Processing","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[{"level":3,"title":"Step 1: Create the script","slug":"step-1-create-the-script","link":"#step-1-create-the-script","children":[]},{"level":3,"title":"Step 2: Run the script","slug":"step-2-run-the-script","link":"#step-2-run-the-script","children":[]},{"level":3,"title":"Step 3: Check the output","slug":"step-3-check-the-output","link":"#step-3-check-the-output","children":[]}]}],"git":{"updatedTime":1692845375000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/batch-support.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-765e30be","path":"/en/doc/batch-support.html","title":"Batch Processing","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[{"level":3,"title":"Step 1: Create the script","slug":"step-1-create-the-script","link":"#step-1-create-the-script","children":[]},{"level":3,"title":"Step 2: Run the script","slug":"step-2-run-the-script","link":"#step-2-run-the-script","children":[]},{"level":3,"title":"Step 3: Check the output","slug":"step-3-check-the-output","link":"#step-3-check-the-output","children":[]}]}],"git":{"updatedTime":1692004748000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/batch-support.md","version":"3.7.2"}');export{e as data};
|
@ -1,2 +1,2 @@
|
||||
import{_ as n,o as s,c,a as e,b as o,e as a,d as r,r as i}from"./app.98a29f3d.js";const d={},l=e("h1",{id:"cat",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#cat","aria-hidden":"true"},"#"),a(" cat")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-cat",target:"_blank",rel:"noopener noreferrer"},_=e("code",null,"cat",-1),u=a(" online tutorial"),p=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Concatenate and print files</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token function">cat</span> /tmp/a.txt
|
||||
import{_ as n,o as s,c,a as e,b as o,e as a,d as r,r as i}from"./app.977e81c1.js";const d={},l=e("h1",{id:"cat",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#cat","aria-hidden":"true"},"#"),a(" cat")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-cat",target:"_blank",rel:"noopener noreferrer"},_=e("code",null,"cat",-1),u=a(" online tutorial"),p=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Concatenate and print files</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token function">cat</span> /tmp/a.txt
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,3);function m(f,v){const t=i("ExternalLinkIcon");return s(),c("div",null,[l,e("p",null,[e("a",h,[_,u,o(t)])]),p])}const x=n(d,[["render",m],["__file","cat.html.vue"]]);export{x as default};
|
@ -1,2 +1,2 @@
|
||||
import{_ as n,o as c,c as s,a as e,b as o,e as a,d as r,r as i}from"./app.98a29f3d.js";const d={},l=e("h1",{id:"cat",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#cat","aria-hidden":"true"},"#"),a(" cat")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-cat",target:"_blank",rel:"noopener noreferrer"},_=e("code",null,"cat",-1),u=a("\u5728\u7EBF\u6559\u7A0B"),m=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u6253\u5370\u6587\u4EF6\u5185\u5BB9\uFF0C\u548C linux \u91CC\u7684 cat \u547D\u4EE4\u7C7B\u4F3C\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token function">cat</span> /tmp/a.txt
|
||||
import{_ as n,o as c,c as s,a as e,b as o,e as a,d as r,r as i}from"./app.977e81c1.js";const d={},l=e("h1",{id:"cat",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#cat","aria-hidden":"true"},"#"),a(" cat")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-cat",target:"_blank",rel:"noopener noreferrer"},_=e("code",null,"cat",-1),u=a("\u5728\u7EBF\u6559\u7A0B"),m=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u6253\u5370\u6587\u4EF6\u5185\u5BB9\uFF0C\u548C linux \u91CC\u7684 cat \u547D\u4EE4\u7C7B\u4F3C\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token function">cat</span> /tmp/a.txt
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,3);function p(f,v){const t=i("ExternalLinkIcon");return c(),s("div",null,[l,e("p",null,[e("a",h,[_,u,o(t)])]),m])}const b=n(d,[["render",p],["__file","cat.html.vue"]]);export{b as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as n,o as l,c as i,a,b as r,e as s,d,r as t}from"./app.98a29f3d.js";const c={},o=a("h1",{id:"classloader",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#classloader","aria-hidden":"true"},"#"),s(" classloader")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=cn&id=command-classloader",target:"_blank",rel:"noopener noreferrer"},p=a("code",null,"classloader",-1),v=s("\u5728\u7EBF\u6559\u7A0B"),m=d(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u67E5\u770B classloader \u7684\u7EE7\u627F\u6811\uFF0Curls\uFF0C\u7C7B\u52A0\u8F7D\u4FE1\u606F</p></div><p><code>classloader</code> \u547D\u4EE4\u5C06 JVM \u4E2D\u6240\u6709\u7684 classloader \u7684\u4FE1\u606F\u7EDF\u8BA1\u51FA\u6765\uFF0C\u5E76\u53EF\u4EE5\u5C55\u793A\u7EE7\u627F\u6811\uFF0Curls \u7B49\u3002</p><p>\u53EF\u4EE5\u8BA9\u6307\u5B9A\u7684 classloader \u53BB getResources\uFF0C\u6253\u5370\u51FA\u6240\u6709\u67E5\u627E\u5230\u7684 resources \u7684 url\u3002\u5BF9\u4E8E<code>ResourceNotFoundException</code>\u6BD4\u8F83\u6709\u7528\u3002</p><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">[l]</td><td style="text-align:left;">\u6309\u7C7B\u52A0\u8F7D\u5B9E\u4F8B\u8FDB\u884C\u7EDF\u8BA1</td></tr><tr><td style="text-align:right;">[t]</td><td style="text-align:left;">\u6253\u5370\u6240\u6709 ClassLoader \u7684\u7EE7\u627F\u6811</td></tr><tr><td style="text-align:right;">[a]</td><td style="text-align:left;">\u5217\u51FA\u6240\u6709 ClassLoader \u52A0\u8F7D\u7684\u7C7B\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528</td></tr><tr><td style="text-align:right;"><code>[c:]</code></td><td style="text-align:left;">ClassLoader \u7684 hashcode</td></tr><tr><td style="text-align:right;"><code>[classLoaderClass:]</code></td><td style="text-align:left;">\u6307\u5B9A\u6267\u884C\u8868\u8FBE\u5F0F\u7684 ClassLoader \u7684 class name</td></tr><tr><td style="text-align:right;"><code>[c: r:]</code></td><td style="text-align:left;">\u7528 ClassLoader \u53BB\u67E5\u627E resource</td></tr><tr><td style="text-align:right;"><code>[c: load:]</code></td><td style="text-align:left;">\u7528 ClassLoader \u53BB\u52A0\u8F7D\u6307\u5B9A\u7684\u7C7B</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><h3 id="\u6309\u7C7B\u52A0\u8F7D\u7C7B\u578B\u67E5\u770B\u7EDF\u8BA1\u4FE1\u606F" tabindex="-1"><a class="header-anchor" href="#\u6309\u7C7B\u52A0\u8F7D\u7C7B\u578B\u67E5\u770B\u7EDF\u8BA1\u4FE1\u606F" aria-hidden="true">#</a> \u6309\u7C7B\u52A0\u8F7D\u7C7B\u578B\u67E5\u770B\u7EDF\u8BA1\u4FE1\u606F</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ classloader
|
||||
import{_ as n,o as l,c as i,a,b as r,e as s,d,r as t}from"./app.977e81c1.js";const c={},o=a("h1",{id:"classloader",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#classloader","aria-hidden":"true"},"#"),s(" classloader")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=cn&id=command-classloader",target:"_blank",rel:"noopener noreferrer"},p=a("code",null,"classloader",-1),v=s("\u5728\u7EBF\u6559\u7A0B"),m=d(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u67E5\u770B classloader \u7684\u7EE7\u627F\u6811\uFF0Curls\uFF0C\u7C7B\u52A0\u8F7D\u4FE1\u606F</p></div><p><code>classloader</code> \u547D\u4EE4\u5C06 JVM \u4E2D\u6240\u6709\u7684 classloader \u7684\u4FE1\u606F\u7EDF\u8BA1\u51FA\u6765\uFF0C\u5E76\u53EF\u4EE5\u5C55\u793A\u7EE7\u627F\u6811\uFF0Curls \u7B49\u3002</p><p>\u53EF\u4EE5\u8BA9\u6307\u5B9A\u7684 classloader \u53BB getResources\uFF0C\u6253\u5370\u51FA\u6240\u6709\u67E5\u627E\u5230\u7684 resources \u7684 url\u3002\u5BF9\u4E8E<code>ResourceNotFoundException</code>\u6BD4\u8F83\u6709\u7528\u3002</p><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">[l]</td><td style="text-align:left;">\u6309\u7C7B\u52A0\u8F7D\u5B9E\u4F8B\u8FDB\u884C\u7EDF\u8BA1</td></tr><tr><td style="text-align:right;">[t]</td><td style="text-align:left;">\u6253\u5370\u6240\u6709 ClassLoader \u7684\u7EE7\u627F\u6811</td></tr><tr><td style="text-align:right;">[a]</td><td style="text-align:left;">\u5217\u51FA\u6240\u6709 ClassLoader \u52A0\u8F7D\u7684\u7C7B\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528</td></tr><tr><td style="text-align:right;"><code>[c:]</code></td><td style="text-align:left;">ClassLoader \u7684 hashcode</td></tr><tr><td style="text-align:right;"><code>[classLoaderClass:]</code></td><td style="text-align:left;">\u6307\u5B9A\u6267\u884C\u8868\u8FBE\u5F0F\u7684 ClassLoader \u7684 class name</td></tr><tr><td style="text-align:right;"><code>[c: r:]</code></td><td style="text-align:left;">\u7528 ClassLoader \u53BB\u67E5\u627E resource</td></tr><tr><td style="text-align:right;"><code>[c: load:]</code></td><td style="text-align:left;">\u7528 ClassLoader \u53BB\u52A0\u8F7D\u6307\u5B9A\u7684\u7C7B</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><h3 id="\u6309\u7C7B\u52A0\u8F7D\u7C7B\u578B\u67E5\u770B\u7EDF\u8BA1\u4FE1\u606F" tabindex="-1"><a class="header-anchor" href="#\u6309\u7C7B\u52A0\u8F7D\u7C7B\u578B\u67E5\u770B\u7EDF\u8BA1\u4FE1\u606F" aria-hidden="true">#</a> \u6309\u7C7B\u52A0\u8F7D\u7C7B\u578B\u67E5\u770B\u7EDF\u8BA1\u4FE1\u606F</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ classloader
|
||||
name numberOfInstances loadedCountTotal
|
||||
com.taobao.arthas.agent.ArthasClassloader <span class="token number">1</span> <span class="token number">2115</span>
|
||||
BootstrapClassLoader <span class="token number">1</span> <span class="token number">1861</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as n,o as l,c as i,a,b as t,e as s,d as r,r as d}from"./app.98a29f3d.js";const c={},o=a("h1",{id:"classloader",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#classloader","aria-hidden":"true"},"#"),s(" classloader")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=en&id=command-classloader",target:"_blank",rel:"noopener noreferrer"},p=a("code",null,"classloader",-1),m=s(" online tutorial"),v=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>View hierarchy, urls and classes-loading info for the class-loaders.</p></div><p><code>classloader</code> can search and print out the URLs for a specified resource from one particular classloader. It is quite handy when analyzing <code>ResourceNotFoundException</code>.</p><h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;">[l]</td><td style="text-align:left;">list all classloader instances</td></tr><tr><td style="text-align:right;">[t]</td><td style="text-align:left;">print classloader's hierarchy</td></tr><tr><td style="text-align:right;">[a]</td><td style="text-align:left;">list all the classes loaded by all the classloaders (use it with great caution since the output can be huge)</td></tr><tr><td style="text-align:right;">[c:]</td><td style="text-align:left;">print classloader's hashcode</td></tr><tr><td style="text-align:right;"><code>[classLoaderClass:]</code></td><td style="text-align:left;">The class name of the ClassLoader that executes the expression.</td></tr><tr><td style="text-align:right;"><code>[c: r:]</code></td><td style="text-align:left;">using ClassLoader to search resource</td></tr><tr><td style="text-align:right;"><code>[c: load:]</code></td><td style="text-align:left;">using ClassLoader to load class</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><h3 id="view-statistics-categorized-by-class-type" tabindex="-1"><a class="header-anchor" href="#view-statistics-categorized-by-class-type" aria-hidden="true">#</a> View statistics categorized by class type</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ classloader
|
||||
import{_ as n,o as l,c as i,a,b as t,e as s,d as r,r as d}from"./app.977e81c1.js";const c={},o=a("h1",{id:"classloader",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#classloader","aria-hidden":"true"},"#"),s(" classloader")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=en&id=command-classloader",target:"_blank",rel:"noopener noreferrer"},p=a("code",null,"classloader",-1),m=s(" online tutorial"),v=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>View hierarchy, urls and classes-loading info for the class-loaders.</p></div><p><code>classloader</code> can search and print out the URLs for a specified resource from one particular classloader. It is quite handy when analyzing <code>ResourceNotFoundException</code>.</p><h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;">[l]</td><td style="text-align:left;">list all classloader instances</td></tr><tr><td style="text-align:right;">[t]</td><td style="text-align:left;">print classloader's hierarchy</td></tr><tr><td style="text-align:right;">[a]</td><td style="text-align:left;">list all the classes loaded by all the classloaders (use it with great caution since the output can be huge)</td></tr><tr><td style="text-align:right;">[c:]</td><td style="text-align:left;">print classloader's hashcode</td></tr><tr><td style="text-align:right;"><code>[classLoaderClass:]</code></td><td style="text-align:left;">The class name of the ClassLoader that executes the expression.</td></tr><tr><td style="text-align:right;"><code>[c: r:]</code></td><td style="text-align:left;">using ClassLoader to search resource</td></tr><tr><td style="text-align:right;"><code>[c: load:]</code></td><td style="text-align:left;">using ClassLoader to load class</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><h3 id="view-statistics-categorized-by-class-type" tabindex="-1"><a class="header-anchor" href="#view-statistics-categorized-by-class-type" aria-hidden="true">#</a> View statistics categorized by class type</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ classloader
|
||||
name numberOfInstances loadedCountTotal
|
||||
com.taobao.arthas.agent.ArthasClassloader <span class="token number">1</span> <span class="token number">2115</span>
|
||||
BootstrapClassLoader <span class="token number">1</span> <span class="token number">1861</span>
|
@ -1 +1 @@
|
||||
import{_ as e,o as t,c,a as s,e as o}from"./app.98a29f3d.js";const n={},a=s("h1",{id:"cls",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#cls","aria-hidden":"true"},"#"),o(" cls")],-1),l=s("p",null,"\u6E05\u7A7A\u5F53\u524D\u5C4F\u5E55\u533A\u57DF\u3002",-1),r=s("div",{class:"custom-container tip"},[s("p",{class:"custom-container-title"},"\u63D0\u793A"),s("p",null,`\u975E\u7EC8\u7AEF\u6A21\u5F0F\u4E0B\u4F7F\u7528 cls \u6307\u4EE4\uFF0C\u4F1A\u63D0\u793A"Command 'cls' is only support tty session."\u3002`)],-1),i=[a,l,r];function _(d,h){return t(),c("div",null,i)}const m=e(n,[["render",_],["__file","cls.html.vue"]]);export{m as default};
|
||||
import{_ as e,o as t,c,a as s,e as o}from"./app.977e81c1.js";const n={},a=s("h1",{id:"cls",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#cls","aria-hidden":"true"},"#"),o(" cls")],-1),l=s("p",null,"\u6E05\u7A7A\u5F53\u524D\u5C4F\u5E55\u533A\u57DF\u3002",-1),r=s("div",{class:"custom-container tip"},[s("p",{class:"custom-container-title"},"\u63D0\u793A"),s("p",null,`\u975E\u7EC8\u7AEF\u6A21\u5F0F\u4E0B\u4F7F\u7528 cls \u6307\u4EE4\uFF0C\u4F1A\u63D0\u793A"Command 'cls' is only support tty session."\u3002`)],-1),i=[a,l,r];function _(d,h){return t(),c("div",null,i)}const m=e(n,[["render",_],["__file","cls.html.vue"]]);export{m as default};
|
@ -1 +1 @@
|
||||
import{_ as t,o as s,c,a as e,e as o}from"./app.98a29f3d.js";const n={},a=e("h1",{id:"cls",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#cls","aria-hidden":"true"},"#"),o(" cls")],-1),l=e("p",null,"clear current console.",-1),r=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,`if not in tty mode,it will warn "Command 'cls' is only support tty session.".`)],-1),i=[a,l,r];function _(d,h){return s(),c("div",null,i)}const m=t(n,[["render",_],["__file","cls.html.vue"]]);export{m as default};
|
||||
import{_ as t,o as s,c,a as e,e as o}from"./app.977e81c1.js";const n={},a=e("h1",{id:"cls",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#cls","aria-hidden":"true"},"#"),o(" cls")],-1),l=e("p",null,"clear current console.",-1),r=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,`if not in tty mode,it will warn "Command 'cls' is only support tty session.".`)],-1),i=[a,l,r];function _(d,h){return s(),c("div",null,i)}const m=t(n,[["render",_],["__file","cls.html.vue"]]);export{m as default};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-3992adde","path":"/doc/contact-us.html","title":"\u8054\u7CFB\u6211\u4EEC","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"\u62DB\u8058","slug":"\u62DB\u8058","link":"#\u62DB\u8058","children":[]},{"level":3,"title":"Issues","slug":"issues","link":"#issues","children":[]},{"level":3,"title":"\u5FAE\u4FE1\u516C\u4F17\u53F7","slug":"\u5FAE\u4FE1\u516C\u4F17\u53F7","link":"#\u5FAE\u4FE1\u516C\u4F17\u53F7","children":[]},{"level":3,"title":"\u9489\u9489\u7FA4","slug":"\u9489\u9489\u7FA4","link":"#\u9489\u9489\u7FA4","children":[]},{"level":3,"title":"QQ \u7FA4","slug":"qq-\u7FA4","link":"#qq-\u7FA4","children":[]}],"git":{"updatedTime":1669871708000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":3},{"name":"hengyunabc","email":"hengyunabc@users.noreply.github.com","commits":2},{"name":"Fatpandac","email":"i@fatpandac.com","commits":1}]},"filePathRelative":"doc/contact-us.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-3992adde","path":"/doc/contact-us.html","title":"\u8054\u7CFB\u6211\u4EEC","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"\u62DB\u8058","slug":"\u62DB\u8058","link":"#\u62DB\u8058","children":[]},{"level":3,"title":"Issues","slug":"issues","link":"#issues","children":[]},{"level":3,"title":"\u5FAE\u4FE1\u516C\u4F17\u53F7","slug":"\u5FAE\u4FE1\u516C\u4F17\u53F7","link":"#\u5FAE\u4FE1\u516C\u4F17\u53F7","children":[]},{"level":3,"title":"\u9489\u9489\u7FA4","slug":"\u9489\u9489\u7FA4","link":"#\u9489\u9489\u7FA4","children":[]},{"level":3,"title":"QQ \u7FA4","slug":"qq-\u7FA4","link":"#qq-\u7FA4","children":[]}],"git":{"updatedTime":1695809492000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":4},{"name":"hengyunabc","email":"hengyunabc@users.noreply.github.com","commits":2},{"name":"Fatpandac","email":"i@fatpandac.com","commits":1}]},"filePathRelative":"doc/contact-us.md","version":"3.7.2"}');export{e as data};
|
@ -0,0 +1 @@
|
||||
import{_ as a,a as i,b as t,c,d as u,e as p}from"./qqgroup3_qr.a24fdd88.js";import{_ as d,o as l,c as h,a as s,b as r,e as o,d as e,r as _}from"./app.977e81c1.js";const g="/images/dingding_group_search.png",m={},b=s("h1",{id:"contact-us",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#contact-us","aria-hidden":"true"},"#"),o(" Contact Us")],-1),f=s("h3",{id:"issues",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#issues","aria-hidden":"true"},"#"),o(" Issues")],-1),k=o("Questions about how to use Arthas and opinions can be directly raised in issues\uFF1A "),x={href:"https://github.com/alibaba/arthas/issues",target:"_blank",rel:"noopener noreferrer"},A=o("https://github.com/alibaba/arthas/issues"),Q=e('<h3 id="dingding-group" tabindex="-1"><a class="header-anchor" href="#dingding-group" aria-hidden="true">#</a> DingDing Group</h3><ul><li>Arthas open source discussion Group\uFF1A 21965291 \uFF0CYou can join by searching for group number\u3002</li></ul><p><img src="'+a+'" alt=""></p><ul><li>Arthas open source discussion Group 2\uFF1A 30707824 \uFF0CYou can join by searching for group number\u3002</li></ul><p><img src="'+i+'" alt=""></p><ul><li>Arthas open source discussion Group 3\uFF1A 17605006847 , You can join by searching for group number\u3002</li></ul><p><img src="'+t+'" alt=""></p><ul><li>Arthas open source discussion Group 4\uFF1A 41920010710 , You can join by searching for group number\u3002</li></ul><p><img src="'+c+'" alt=""></p><h3 id="instructions-for-installing-dingtalk" tabindex="-1"><a class="header-anchor" href="#instructions-for-installing-dingtalk" aria-hidden="true">#</a> Instructions for Installing DingTalk</h3>',10),w=o("DingTalk can be downloaded from: "),y={href:"https://page.dingtalk.com/wow/dingtalk/act/en-download",target:"_blank",rel:"noopener noreferrer"},G=o("https://www.dingtalk.com/en"),j=e('<p>After installing you can search for group number and join it.</p><p><img src="'+g+'" alt=""></p><h3 id="qq-group" tabindex="-1"><a class="header-anchor" href="#qq-group" aria-hidden="true">#</a> QQ Group</h3><p>Arthas open source discussion QQ group\uFF1A916328269</p><p><img src="'+u+'" alt=""></p><p>Arthas open source discussion QQ group2\uFF1A854625984</p><p>Arthas open source discussion QQ group 3\uFF1A 672077388</p><p><img src="'+p+'" alt=""></p>',8);function I(q,D){const n=_("ExternalLinkIcon");return l(),h("div",null,[b,f,s("p",null,[k,s("a",x,[A,r(n)])]),Q,s("p",null,[w,s("a",y,[G,r(n)])]),j])}const Y=d(m,[["render",I],["__file","contact-us.html.vue"]]);export{Y as default};
|
@ -1 +0,0 @@
|
||||
import{_ as r,a as t,b as i,c,d as u}from"./qqgroup3_qr.f82e3fd0.js";import{_ as d,o as p,c as h,a as s,b as n,e as o,d as a,r as l}from"./app.98a29f3d.js";const _="/images/dingding_group_search.png",g={},m=s("h1",{id:"contact-us",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#contact-us","aria-hidden":"true"},"#"),o(" Contact Us")],-1),f=s("h3",{id:"issues",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#issues","aria-hidden":"true"},"#"),o(" Issues")],-1),b=o("Questions about how to use Arthas and opinions can be directly raised in issues\uFF1A "),k={href:"https://github.com/alibaba/arthas/issues",target:"_blank",rel:"noopener noreferrer"},x=o("https://github.com/alibaba/arthas/issues"),Q=a('<h3 id="dingding-group" tabindex="-1"><a class="header-anchor" href="#dingding-group" aria-hidden="true">#</a> DingDing Group</h3><ul><li>Arthas open source discussion Group\uFF1A 21965291 \uFF0CYou can join by searching for group number\u3002</li></ul><p><img src="'+r+'" alt=""></p><ul><li>Arthas open source discussion Group 2\uFF1A 30707824 \uFF0CYou can join by searching for group number\u3002</li></ul><p><img src="'+t+'" alt=""></p><ul><li>Arthas open source discussion Group 3\uFF1A 17605006847 , You can join by searching for group number\u3002</li></ul><p><img src="'+i+'" alt=""></p><h3 id="instructions-for-installing-dingtalk" tabindex="-1"><a class="header-anchor" href="#instructions-for-installing-dingtalk" aria-hidden="true">#</a> Instructions for Installing DingTalk</h3>',8),w=o("DingTalk can be downloaded from: "),A={href:"https://page.dingtalk.com/wow/dingtalk/act/en-download",target:"_blank",rel:"noopener noreferrer"},y=o("https://www.dingtalk.com/en"),G=a('<p>After installing you can search for group number and join it.</p><p><img src="'+_+'" alt=""></p><h3 id="qq-group" tabindex="-1"><a class="header-anchor" href="#qq-group" aria-hidden="true">#</a> QQ Group</h3><p>Arthas open source discussion QQ group\uFF1A916328269</p><p><img src="'+c+'" alt=""></p><p>Arthas open source discussion QQ group2\uFF1A854625984</p><p>Arthas open source discussion QQ group 3\uFF1A 672077388</p><p><img src="'+u+'" alt=""></p>',8);function I(j,q){const e=l("ExternalLinkIcon");return p(),h("div",null,[m,f,s("p",null,[b,s("a",k,[x,n(e)])]),Q,s("p",null,[w,s("a",A,[y,n(e)])]),G])}const V=d(g,[["render",I],["__file","contact-us.html.vue"]]);export{V as default};
|
@ -0,0 +1 @@
|
||||
import{_ as r,a as i,b as o,c as n,d as h,e as c}from"./qqgroup3_qr.a24fdd88.js";import{_ as l,o as _,c as d,a,b as t,e,d as p,r as u}from"./app.977e81c1.js";const m="/images/qrcode_gongzhonghao.jpg",g="/images/qqgroup2_qr.jpg",f={},b=a("h1",{id:"\u8054\u7CFB\u6211\u4EEC",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#\u8054\u7CFB\u6211\u4EEC","aria-hidden":"true"},"#"),e(" \u8054\u7CFB\u6211\u4EEC")],-1),x=a("h3",{id:"\u62DB\u8058",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#\u62DB\u8058","aria-hidden":"true"},"#"),e(" \u62DB\u8058")],-1),q={href:"https://mp.weixin.qq.com/s/XQv8GnqGT3pzceVwzeiy-A",target:"_blank",rel:"noopener noreferrer"},A=e("\u671F\u5F85\u4F60\u7684\u52A0\u5165"),Q=a("h3",{id:"issues",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#issues","aria-hidden":"true"},"#"),e(" Issues")],-1),k=e("\u4F7F\u7528\u7591\u95EE\uFF0C\u610F\u89C1\u53EF\u4EE5\u76F4\u63A5\u5728 Issues \u91CC\u63D0\u51FA\uFF1A "),V={href:"https://github.com/alibaba/arthas/issues",target:"_blank",rel:"noopener noreferrer"},v=e("https://github.com/alibaba/arthas/issues"),I=p('<h3 id="\u5FAE\u4FE1\u516C\u4F17\u53F7" tabindex="-1"><a class="header-anchor" href="#\u5FAE\u4FE1\u516C\u4F17\u53F7" aria-hidden="true">#</a> \u5FAE\u4FE1\u516C\u4F17\u53F7</h3><p>\u6B22\u8FCE\u5173\u6CE8\u516C\u4F17\u53F7\uFF0C\u83B7\u53D6 Arthas \u9879\u76EE\u7684\u4FE1\u606F\u3001\u6E90\u7801\u5206\u6790\u3001\u6848\u4F8B\u5B9E\u8DF5\u3002</p><p><img src="'+m+'" alt=""></p><h3 id="\u9489\u9489\u7FA4" tabindex="-1"><a class="header-anchor" href="#\u9489\u9489\u7FA4" aria-hidden="true">#</a> \u9489\u9489\u7FA4</h3><ul><li>Arthas \u5F00\u6E90\u4EA4\u6D41\u9489\u9489\u7FA4\uFF1A 21965291 \uFF0C\u641C\u7D22\u7FA4\u53F7\u5373\u53EF\u52A0\u5165\u3002\uFF08\u5982\u679C\u6EE1\u4E86\u65E0\u6CD5\u52A0\u5165\uFF0C\u8BF7\u52A0 4 \u7FA4\uFF09</li></ul><p><img src="'+r+'" alt=""></p><ul><li>Arthas \u5F00\u6E90\u4EA4\u6D41\u9489\u9489\u7FA4 2\uFF1A 30707824 \uFF0C\u641C\u7D22\u7FA4\u53F7\u5373\u53EF\u52A0\u5165\u3002\uFF08\u5982\u679C\u6EE1\u4E86\u65E0\u6CD5\u52A0\u5165\uFF0C\u8BF7\u52A0 4 \u7FA4\uFF09</li></ul><p><img src="'+i+'" alt=""></p><ul><li>Arthas \u5F00\u6E90\u4EA4\u6D41\u9489\u9489\u7FA4 3\uFF1A 17605006847 \uFF0C\u641C\u7D22\u7FA4\u53F7\u5373\u53EF\u52A0\u5165\u3002\uFF08\u5982\u679C\u6EE1\u4E86\u65E0\u6CD5\u52A0\u5165\uFF0C\u8BF7\u52A0 4 \u7FA4\uFF09</li></ul><p><img src="'+o+'" alt=""></p><ul><li>Arthas \u5F00\u6E90\u4EA4\u6D41\u9489\u9489\u7FA4 4\uFF1A 41920010710 \uFF0C\u641C\u7D22\u7FA4\u53F7\u5373\u53EF\u52A0\u5165\u3002</li></ul><p><img src="'+n+'" alt=""></p><h3 id="qq-\u7FA4" tabindex="-1"><a class="header-anchor" href="#qq-\u7FA4" aria-hidden="true">#</a> QQ \u7FA4</h3><p>Arthas \u5F00\u6E90\u4EA4\u6D41 QQ \u7FA4\uFF1A 916328269 \uFF08\u5982\u679C\u6EE1\u4E86\u65E0\u6CD5\u52A0\u5165\uFF0C\u8BF7\u52A0 3 \u7FA4\uFF09</p><p><img src="'+h+'" alt=""></p><p>Arthas \u5F00\u6E90\u4EA4\u6D41 QQ \u7FA4 2\uFF1A 854625984</p><p><img src="'+g+'" alt=""></p><p>Arthas \u5F00\u6E90\u4EA4\u6D41 QQ \u7FA4 3\uFF1A 672077388</p><p><img src="'+c+'" alt=""></p>',19);function N(z,B){const s=u("ExternalLinkIcon");return _(),d("div",null,[b,x,a("ul",null,[a("li",null,[a("a",q,[A,t(s)])])]),Q,a("p",null,[k,a("a",V,[v,t(s)])]),I])}const w=l(f,[["render",N],["__file","contact-us.html.vue"]]);export{w as default};
|
@ -1 +1 @@
|
||||
const n=JSON.parse('{"key":"v-4be7594a","path":"/en/doc/contact-us.html","title":"Contact Us","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"Issues","slug":"issues","link":"#issues","children":[]},{"level":3,"title":"DingDing Group","slug":"dingding-group","link":"#dingding-group","children":[]},{"level":3,"title":"Instructions for Installing DingTalk","slug":"instructions-for-installing-dingtalk","link":"#instructions-for-installing-dingtalk","children":[]},{"level":3,"title":"QQ Group","slug":"qq-group","link":"#qq-group","children":[]}],"git":{"updatedTime":1669871708000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":3},{"name":"hengyunabc","email":"hengyunabc@users.noreply.github.com","commits":1}]},"filePathRelative":"en/doc/contact-us.md","version":"3.7.2"}');export{n as data};
|
||||
const n=JSON.parse('{"key":"v-4be7594a","path":"/en/doc/contact-us.html","title":"Contact Us","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"Issues","slug":"issues","link":"#issues","children":[]},{"level":3,"title":"DingDing Group","slug":"dingding-group","link":"#dingding-group","children":[]},{"level":3,"title":"Instructions for Installing DingTalk","slug":"instructions-for-installing-dingtalk","link":"#instructions-for-installing-dingtalk","children":[]},{"level":3,"title":"QQ Group","slug":"qq-group","link":"#qq-group","children":[]}],"git":{"updatedTime":1695809536000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":4},{"name":"hengyunabc","email":"hengyunabc@users.noreply.github.com","commits":2}]},"filePathRelative":"en/doc/contact-us.md","version":"3.7.2"}');export{n as data};
|
@ -1 +0,0 @@
|
||||
import{_ as r,a as i,b as o,c as n,d as h}from"./qqgroup3_qr.f82e3fd0.js";import{_ as c,o as l,c as _,a as e,b as t,e as a,d,r as p}from"./app.98a29f3d.js";const u="/images/qrcode_gongzhonghao.jpg",m="/images/qqgroup2_qr.jpg",g={},f=e("h1",{id:"\u8054\u7CFB\u6211\u4EEC",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#\u8054\u7CFB\u6211\u4EEC","aria-hidden":"true"},"#"),a(" \u8054\u7CFB\u6211\u4EEC")],-1),b=e("h3",{id:"\u62DB\u8058",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#\u62DB\u8058","aria-hidden":"true"},"#"),a(" \u62DB\u8058")],-1),x={href:"https://mp.weixin.qq.com/s/XQv8GnqGT3pzceVwzeiy-A",target:"_blank",rel:"noopener noreferrer"},q=a("\u671F\u5F85\u4F60\u7684\u52A0\u5165"),Q=e("h3",{id:"issues",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#issues","aria-hidden":"true"},"#"),a(" Issues")],-1),A=a("\u4F7F\u7528\u7591\u95EE\uFF0C\u610F\u89C1\u53EF\u4EE5\u76F4\u63A5\u5728 Issues \u91CC\u63D0\u51FA\uFF1A "),k={href:"https://github.com/alibaba/arthas/issues",target:"_blank",rel:"noopener noreferrer"},V=a("https://github.com/alibaba/arthas/issues"),v=d('<h3 id="\u5FAE\u4FE1\u516C\u4F17\u53F7" tabindex="-1"><a class="header-anchor" href="#\u5FAE\u4FE1\u516C\u4F17\u53F7" aria-hidden="true">#</a> \u5FAE\u4FE1\u516C\u4F17\u53F7</h3><p>\u6B22\u8FCE\u5173\u6CE8\u516C\u4F17\u53F7\uFF0C\u83B7\u53D6 Arthas \u9879\u76EE\u7684\u4FE1\u606F\u3001\u6E90\u7801\u5206\u6790\u3001\u6848\u4F8B\u5B9E\u8DF5\u3002</p><p><img src="'+u+'" alt=""></p><h3 id="\u9489\u9489\u7FA4" tabindex="-1"><a class="header-anchor" href="#\u9489\u9489\u7FA4" aria-hidden="true">#</a> \u9489\u9489\u7FA4</h3><ul><li>Arthas \u5F00\u6E90\u4EA4\u6D41\u9489\u9489\u7FA4\uFF1A 21965291 \uFF0C\u641C\u7D22\u7FA4\u53F7\u5373\u53EF\u52A0\u5165\u3002\uFF08\u5982\u679C\u6EE1\u4E86\u65E0\u6CD5\u52A0\u5165\uFF0C\u8BF7\u52A0 3 \u7FA4\uFF09</li></ul><p><img src="'+r+'" alt=""></p><ul><li>Arthas \u5F00\u6E90\u4EA4\u6D41\u9489\u9489\u7FA4 2\uFF1A 30707824 \uFF0C\u641C\u7D22\u7FA4\u53F7\u5373\u53EF\u52A0\u5165\u3002\uFF08\u5982\u679C\u6EE1\u4E86\u65E0\u6CD5\u52A0\u5165\uFF0C\u8BF7\u52A0 3 \u7FA4\uFF09</li></ul><p><img src="'+i+'" alt=""></p><ul><li>Arthas \u5F00\u6E90\u4EA4\u6D41\u9489\u9489\u7FA4 3\uFF1A 17605006847 \uFF0C\u641C\u7D22\u7FA4\u53F7\u5373\u53EF\u52A0\u5165\u3002</li></ul><p><img src="'+o+'" alt=""></p><h3 id="qq-\u7FA4" tabindex="-1"><a class="header-anchor" href="#qq-\u7FA4" aria-hidden="true">#</a> QQ \u7FA4</h3><p>Arthas \u5F00\u6E90\u4EA4\u6D41 QQ \u7FA4\uFF1A 916328269 \uFF08\u5982\u679C\u6EE1\u4E86\u65E0\u6CD5\u52A0\u5165\uFF0C\u8BF7\u52A0 3 \u7FA4\uFF09</p><p><img src="'+n+'" alt=""></p><p>Arthas \u5F00\u6E90\u4EA4\u6D41 QQ \u7FA4 2\uFF1A 854625984</p><p><img src="'+m+'" alt=""></p><p>Arthas \u5F00\u6E90\u4EA4\u6D41 QQ \u7FA4 3\uFF1A 672077388</p><p><img src="'+h+'" alt=""></p>',17);function I(N,z){const s=p("ExternalLinkIcon");return l(),_("div",null,[f,b,e("ul",null,[e("li",null,[e("a",x,[q,t(s)])])]),Q,e("p",null,[A,e("a",k,[V,t(s)])]),v])}const j=c(g,[["render",I],["__file","contact-us.html.vue"]]);export{j as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as n}from"./dashboard.eb1e1fee.js";import{_ as d,o as l,c as s,a as e,b as t,e as a,d as r,r as c}from"./app.98a29f3d.js";const o={},h=e("h1",{id:"dashboard",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dashboard","aria-hidden":"true"},"#"),a(" dashboard")],-1),m={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-dashboard",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"dashboard",-1),v=a("\u5728\u7EBF\u6559\u7A0B"),b=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u5F53\u524D\u7CFB\u7EDF\u7684\u5B9E\u65F6\u6570\u636E\u9762\u677F\uFF0C\u6309 ctrl+c \u9000\u51FA\u3002</p></div><p>\u5F53\u8FD0\u884C\u5728 Ali-tomcat \u65F6\uFF0C\u4F1A\u663E\u793A\u5F53\u524D tomcat \u7684\u5B9E\u65F6\u4FE1\u606F\uFF0C\u5982 HTTP \u8BF7\u6C42\u7684 qps, rt, \u9519\u8BEF\u6570, \u7EBF\u7A0B\u6C60\u4FE1\u606F\u7B49\u7B49\u3002</p><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">[i:]</td><td style="text-align:left;">\u5237\u65B0\u5B9E\u65F6\u6570\u636E\u7684\u65F6\u95F4\u95F4\u9694 (ms)\uFF0C\u9ED8\u8BA4 5000ms</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">\u5237\u65B0\u5B9E\u65F6\u6570\u636E\u7684\u6B21\u6570</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ dashboard
|
||||
import{_ as n}from"./dashboard.eb1e1fee.js";import{_ as d,o as l,c as s,a as e,b as t,e as a,d as r,r as c}from"./app.977e81c1.js";const o={},h=e("h1",{id:"dashboard",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dashboard","aria-hidden":"true"},"#"),a(" dashboard")],-1),m={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-dashboard",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"dashboard",-1),v=a("\u5728\u7EBF\u6559\u7A0B"),b=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u5F53\u524D\u7CFB\u7EDF\u7684\u5B9E\u65F6\u6570\u636E\u9762\u677F\uFF0C\u6309 ctrl+c \u9000\u51FA\u3002</p></div><p>\u5F53\u8FD0\u884C\u5728 Ali-tomcat \u65F6\uFF0C\u4F1A\u663E\u793A\u5F53\u524D tomcat \u7684\u5B9E\u65F6\u4FE1\u606F\uFF0C\u5982 HTTP \u8BF7\u6C42\u7684 qps, rt, \u9519\u8BEF\u6570, \u7EBF\u7A0B\u6C60\u4FE1\u606F\u7B49\u7B49\u3002</p><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">[i:]</td><td style="text-align:left;">\u5237\u65B0\u5B9E\u65F6\u6570\u636E\u7684\u65F6\u95F4\u95F4\u9694 (ms)\uFF0C\u9ED8\u8BA4 5000ms</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">\u5237\u65B0\u5B9E\u65F6\u6570\u636E\u7684\u6B21\u6570</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ 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
|
@ -1,4 +1,4 @@
|
||||
import{_ as n}from"./dashboard.eb1e1fee.js";import{_ as s,o as r,c as d,a as e,b as i,e as a,d as l,r as o}from"./app.98a29f3d.js";const c={},h=e("h1",{id:"dashboard",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dashboard","aria-hidden":"true"},"#"),a(" dashboard")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-dashboard",target:"_blank",rel:"noopener noreferrer"},m=e("code",null,"dashboard",-1),v=a(" online tutorial"),p=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,[a("This is the real time statistics dashboard for the current system, press "),e("code",null,"Ctrl+C"),a(" to exit.")])],-1),b=a("When running in Apache Tomcat Alibaba edition, the dashboard will also present the real time statistics of the tomcat, including "),f={href:"https://en.wikipedia.org/wiki/Queries_per_second",target:"_blank",rel:"noopener noreferrer"},g=a("QPS"),_=a(", RT, error counts, and thread pool, etc."),T=l(`<h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;">[i:]</td><td style="text-align:left;">The interval (in ms) between two executions, default is 5000 ms.</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">The number of times this command will be executed.</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ dashboard
|
||||
import{_ as n}from"./dashboard.eb1e1fee.js";import{_ as s,o as r,c as d,a as e,b as i,e as a,d as l,r as o}from"./app.977e81c1.js";const c={},h=e("h1",{id:"dashboard",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dashboard","aria-hidden":"true"},"#"),a(" dashboard")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-dashboard",target:"_blank",rel:"noopener noreferrer"},m=e("code",null,"dashboard",-1),v=a(" online tutorial"),p=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,[a("This is the real time statistics dashboard for the current system, press "),e("code",null,"Ctrl+C"),a(" to exit.")])],-1),b=a("When running in Apache Tomcat Alibaba edition, the dashboard will also present the real time statistics of the tomcat, including "),f={href:"https://en.wikipedia.org/wiki/Queries_per_second",target:"_blank",rel:"noopener noreferrer"},g=a("QPS"),_=a(", RT, error counts, and thread pool, etc."),T=l(`<h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;">[i:]</td><td style="text-align:left;">The interval (in ms) between two executions, default is 5000 ms.</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">The number of times this command will be executed.</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ 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
|
@ -1,4 +1,4 @@
|
||||
import{_ as n,o as e,c as t,a,b as p,d as i,e as l,r as o}from"./app.98a29f3d.js";const r={},c=i(`<h1 id="docker" tabindex="-1"><a class="header-anchor" href="#docker" aria-hidden="true">#</a> Docker</h1><h2 id="\u5728-docker-\u91CC\u4F7F\u7528-jdk" tabindex="-1"><a class="header-anchor" href="#\u5728-docker-\u91CC\u4F7F\u7528-jdk" aria-hidden="true">#</a> \u5728 Docker \u91CC\u4F7F\u7528 JDK</h2><p>\u5F88\u591A\u65F6\u5019\uFF0C\u5E94\u7528\u5728 docker \u91CC\u51FA\u73B0 arthas \u65E0\u6CD5\u5DE5\u4F5C\u7684\u95EE\u9898\uFF0C\u662F\u56E0\u4E3A\u5E94\u7528\u6CA1\u6709\u5B89\u88C5 JDK \uFF0C\u800C\u662F\u5B89\u88C5\u4E86 JRE \u3002\u5982\u679C\u53EA\u5B89\u88C5\u4E86 JRE\uFF0C\u5219\u4F1A\u7F3A\u5C11\u5F88\u591A JAVA \u7684\u547D\u4EE4\u884C\u5DE5\u5177\u548C\u7C7B\u5E93\uFF0CArthas \u4E5F\u6CA1\u529E\u6CD5\u6B63\u5E38\u5DE5\u4F5C\u3002\u4E0B\u9762\u4ECB\u7ECD\u4E24\u79CD\u5E38\u89C1\u7684\u5728 Docker \u91CC\u4F7F\u7528 JDK \u7684\u65B9\u5F0F\u3002</p><h3 id="\u4F7F\u7528\u516C\u5F00\u7684-jdk-\u955C\u50CF" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u516C\u5F00\u7684-jdk-\u955C\u50CF" aria-hidden="true">#</a> \u4F7F\u7528\u516C\u5F00\u7684 JDK \u955C\u50CF</h3><ul><li>https://hub.docker.com/_/openjdk/</li></ul><p>\u6BD4\u5982\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>FROM openjdk:8-jdk
|
||||
import{_ as n,o as e,c as t,a,b as p,d as i,e as l,r as o}from"./app.977e81c1.js";const r={},c=i(`<h1 id="docker" tabindex="-1"><a class="header-anchor" href="#docker" aria-hidden="true">#</a> Docker</h1><h2 id="\u5728-docker-\u91CC\u4F7F\u7528-jdk" tabindex="-1"><a class="header-anchor" href="#\u5728-docker-\u91CC\u4F7F\u7528-jdk" aria-hidden="true">#</a> \u5728 Docker \u91CC\u4F7F\u7528 JDK</h2><p>\u5F88\u591A\u65F6\u5019\uFF0C\u5E94\u7528\u5728 docker \u91CC\u51FA\u73B0 arthas \u65E0\u6CD5\u5DE5\u4F5C\u7684\u95EE\u9898\uFF0C\u662F\u56E0\u4E3A\u5E94\u7528\u6CA1\u6709\u5B89\u88C5 JDK \uFF0C\u800C\u662F\u5B89\u88C5\u4E86 JRE \u3002\u5982\u679C\u53EA\u5B89\u88C5\u4E86 JRE\uFF0C\u5219\u4F1A\u7F3A\u5C11\u5F88\u591A JAVA \u7684\u547D\u4EE4\u884C\u5DE5\u5177\u548C\u7C7B\u5E93\uFF0CArthas \u4E5F\u6CA1\u529E\u6CD5\u6B63\u5E38\u5DE5\u4F5C\u3002\u4E0B\u9762\u4ECB\u7ECD\u4E24\u79CD\u5E38\u89C1\u7684\u5728 Docker \u91CC\u4F7F\u7528 JDK \u7684\u65B9\u5F0F\u3002</p><h3 id="\u4F7F\u7528\u516C\u5F00\u7684-jdk-\u955C\u50CF" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u516C\u5F00\u7684-jdk-\u955C\u50CF" aria-hidden="true">#</a> \u4F7F\u7528\u516C\u5F00\u7684 JDK \u955C\u50CF</h3><ul><li>https://hub.docker.com/_/openjdk/</li></ul><p>\u6BD4\u5982\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>FROM openjdk:8-jdk
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>\u6216\u8005\uFF1A</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>FROM openjdk:8-jdk-alpine
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="\u901A\u8FC7\u5305\u7BA1\u7406\u8F6F\u4EF6\u6765\u5B89\u88C5" tabindex="-1"><a class="header-anchor" href="#\u901A\u8FC7\u5305\u7BA1\u7406\u8F6F\u4EF6\u6765\u5B89\u88C5" aria-hidden="true">#</a> \u901A\u8FC7\u5305\u7BA1\u7406\u8F6F\u4EF6\u6765\u5B89\u88C5</h3><p>\u6BD4\u5982\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token comment"># Install OpenJDK-8</span>
|
||||
RUN <span class="token function">apt-get</span> update <span class="token operator">&&</span> <span class="token punctuation">\\</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as n,o as e,c as t,a,b as i,d as o,e as p,r as l}from"./app.98a29f3d.js";const r={},c=o(`<h1 id="docker" tabindex="-1"><a class="header-anchor" href="#docker" aria-hidden="true">#</a> Docker</h1><h2 id="use-jdk-in-docker" tabindex="-1"><a class="header-anchor" href="#use-jdk-in-docker" aria-hidden="true">#</a> Use JDK in Docker</h2><p>Many times, the problem that arthas can't work with the application in docker is because the docker does not install JDK, but installs JRE. If only JRE is installed, many JAVA command line tools and class libraries will be missing, and Arthas will not work properly. Here are two common ways to use JDK in Docker.</p><h3 id="use-public-jdk-image" tabindex="-1"><a class="header-anchor" href="#use-public-jdk-image" aria-hidden="true">#</a> Use public JDK image</h3><ul><li>https://hub.docker.com/_/openjdk/</li></ul><p>such as:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>FROM openjdk:8-jdk
|
||||
import{_ as n,o as e,c as t,a,b as i,d as o,e as p,r as l}from"./app.977e81c1.js";const r={},c=o(`<h1 id="docker" tabindex="-1"><a class="header-anchor" href="#docker" aria-hidden="true">#</a> Docker</h1><h2 id="use-jdk-in-docker" tabindex="-1"><a class="header-anchor" href="#use-jdk-in-docker" aria-hidden="true">#</a> Use JDK in Docker</h2><p>Many times, the problem that arthas can't work with the application in docker is because the docker does not install JDK, but installs JRE. If only JRE is installed, many JAVA command line tools and class libraries will be missing, and Arthas will not work properly. Here are two common ways to use JDK in Docker.</p><h3 id="use-public-jdk-image" tabindex="-1"><a class="header-anchor" href="#use-public-jdk-image" aria-hidden="true">#</a> Use public JDK image</h3><ul><li>https://hub.docker.com/_/openjdk/</li></ul><p>such as:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>FROM openjdk:8-jdk
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>or:</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>FROM openjdk:8-jdk-alpine
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="install-via-package-management-software" tabindex="-1"><a class="header-anchor" href="#install-via-package-management-software" aria-hidden="true">#</a> Install via package management software</h3><p>such as:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token comment"># Install OpenJDK-8</span>
|
||||
RUN <span class="token function">apt-get</span> update <span class="token operator">&&</span> <span class="token punctuation">\\</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as t,o,c as i,a,b as r,d as n,e,r as d}from"./app.98a29f3d.js";const h={},l=n('<h1 id="\u4E0B\u8F7D" tabindex="-1"><a class="header-anchor" href="#\u4E0B\u8F7D" aria-hidden="true">#</a> \u4E0B\u8F7D</h1><h2 id="\u4E0B\u8F7D\u5168\u91CF\u5305" tabindex="-1"><a class="header-anchor" href="#\u4E0B\u8F7D\u5168\u91CF\u5305" aria-hidden="true">#</a> \u4E0B\u8F7D\u5168\u91CF\u5305</h2><h3 id="\u4ECE-maven-\u4ED3\u5E93\u4E0B\u8F7D" tabindex="-1"><a class="header-anchor" href="#\u4ECE-maven-\u4ED3\u5E93\u4E0B\u8F7D" aria-hidden="true">#</a> \u4ECE Maven \u4ED3\u5E93\u4E0B\u8F7D</h3>',3),c=e("\u6700\u65B0\u7248\u672C\uFF0C\u70B9\u51FB\u4E0B\u8F7D\uFF1A"),u={href:"https://arthas.aliyun.com/download/latest_version?mirror=aliyun",target:"_blank",rel:"noopener noreferrer"},b=a("img",{src:"https://img.shields.io/maven-central/v/com.taobao.arthas/arthas-packaging.svg?style=flat-square",alt:"",title:"Arthas"},null,-1),p=a("h3",{id:"\u4ECE-github-releases-\u9875\u4E0B\u8F7D",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#\u4ECE-github-releases-\u9875\u4E0B\u8F7D","aria-hidden":"true"},"#"),e(" \u4ECE Github Releases \u9875\u4E0B\u8F7D")],-1),v={href:"https://github.com/alibaba/arthas/releases",target:"_blank",rel:"noopener noreferrer"},m=e("https://github.com/alibaba/arthas/releases"),_=n(`<h3 id="\u7528-as-sh-\u542F\u52A8" tabindex="-1"><a class="header-anchor" href="#\u7528-as-sh-\u542F\u52A8" aria-hidden="true">#</a> \u7528 as.sh \u542F\u52A8</h3><p>\u89E3\u538B\u540E\uFF0C\u5728\u6587\u4EF6\u5939\u91CC\u6709<code>as.sh</code>\uFF0C\u76F4\u63A5\u7528<code>./as.sh</code>\u7684\u65B9\u5F0F\u542F\u52A8\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>./as.sh
|
||||
import{_ as t,o,c as i,a,b as r,d as n,e,r as d}from"./app.977e81c1.js";const h={},l=n('<h1 id="\u4E0B\u8F7D" tabindex="-1"><a class="header-anchor" href="#\u4E0B\u8F7D" aria-hidden="true">#</a> \u4E0B\u8F7D</h1><h2 id="\u4E0B\u8F7D\u5168\u91CF\u5305" tabindex="-1"><a class="header-anchor" href="#\u4E0B\u8F7D\u5168\u91CF\u5305" aria-hidden="true">#</a> \u4E0B\u8F7D\u5168\u91CF\u5305</h2><h3 id="\u4ECE-maven-\u4ED3\u5E93\u4E0B\u8F7D" tabindex="-1"><a class="header-anchor" href="#\u4ECE-maven-\u4ED3\u5E93\u4E0B\u8F7D" aria-hidden="true">#</a> \u4ECE Maven \u4ED3\u5E93\u4E0B\u8F7D</h3>',3),c=e("\u6700\u65B0\u7248\u672C\uFF0C\u70B9\u51FB\u4E0B\u8F7D\uFF1A"),u={href:"https://arthas.aliyun.com/download/latest_version?mirror=aliyun",target:"_blank",rel:"noopener noreferrer"},b=a("img",{src:"https://img.shields.io/maven-central/v/com.taobao.arthas/arthas-packaging.svg?style=flat-square",alt:"",title:"Arthas"},null,-1),p=a("h3",{id:"\u4ECE-github-releases-\u9875\u4E0B\u8F7D",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#\u4ECE-github-releases-\u9875\u4E0B\u8F7D","aria-hidden":"true"},"#"),e(" \u4ECE Github Releases \u9875\u4E0B\u8F7D")],-1),v={href:"https://github.com/alibaba/arthas/releases",target:"_blank",rel:"noopener noreferrer"},m=e("https://github.com/alibaba/arthas/releases"),_=n(`<h3 id="\u7528-as-sh-\u542F\u52A8" tabindex="-1"><a class="header-anchor" href="#\u7528-as-sh-\u542F\u52A8" aria-hidden="true">#</a> \u7528 as.sh \u542F\u52A8</h3><p>\u89E3\u538B\u540E\uFF0C\u5728\u6587\u4EF6\u5939\u91CC\u6709<code>as.sh</code>\uFF0C\u76F4\u63A5\u7528<code>./as.sh</code>\u7684\u65B9\u5F0F\u542F\u52A8\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>./as.sh
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>\u6253\u5370\u5E2E\u52A9\u4FE1\u606F\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>./as.sh <span class="token parameter variable">-h</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="\u7528-arthas-boot-\u542F\u52A8" tabindex="-1"><a class="header-anchor" href="#\u7528-arthas-boot-\u542F\u52A8" aria-hidden="true">#</a> \u7528 arthas-boot \u542F\u52A8</h3><p>\u6216\u8005\u5728\u89E3\u538B\u540E\uFF0C\u5728\u6587\u4EF6\u5939\u91CC\u6709<code>arthas-boot.jar</code>\uFF0C\u76F4\u63A5\u7528<code>java -jar</code>\u7684\u65B9\u5F0F\u542F\u52A8\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>\u6253\u5370\u5E2E\u52A9\u4FE1\u606F\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar <span class="token parameter variable">-h</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as r,o as t,c as d,a,b as n,d as o,e,r as i}from"./app.98a29f3d.js";const l={},h=o('<h1 id="download" tabindex="-1"><a class="header-anchor" href="#download" aria-hidden="true">#</a> Download</h1><h2 id="download-full-package" tabindex="-1"><a class="header-anchor" href="#download-full-package" aria-hidden="true">#</a> Download full package</h2><h3 id="download-from-maven-central" tabindex="-1"><a class="header-anchor" href="#download-from-maven-central" aria-hidden="true">#</a> Download from maven central</h3>',3),c=e("Latest Version, Click To Download: "),u={href:"https://arthas.aliyun.com/download/latest_version",target:"_blank",rel:"noopener noreferrer"},p=a("img",{src:"https://img.shields.io/maven-central/v/com.taobao.arthas/arthas-packaging.svg?style=flat-square",alt:"",title:"Arthas"},null,-1),m=a("h3",{id:"download-from-github-releases",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#download-from-github-releases","aria-hidden":"true"},"#"),e(" Download from Github Releases")],-1),b={href:"https://github.com/alibaba/arthas/releases",target:"_blank",rel:"noopener noreferrer"},v=e("https://github.com/alibaba/arthas/releases"),f=o(`<h3 id="use-as-sh" tabindex="-1"><a class="header-anchor" href="#use-as-sh" aria-hidden="true">#</a> Use as.sh</h3><p>Download and unzip, find <code>as.sh</code> in the directory. Start it in bash:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>./as.sh
|
||||
import{_ as r,o as t,c as d,a,b as n,d as o,e,r as i}from"./app.977e81c1.js";const l={},h=o('<h1 id="download" tabindex="-1"><a class="header-anchor" href="#download" aria-hidden="true">#</a> Download</h1><h2 id="download-full-package" tabindex="-1"><a class="header-anchor" href="#download-full-package" aria-hidden="true">#</a> Download full package</h2><h3 id="download-from-maven-central" tabindex="-1"><a class="header-anchor" href="#download-from-maven-central" aria-hidden="true">#</a> Download from maven central</h3>',3),c=e("Latest Version, Click To Download: "),u={href:"https://arthas.aliyun.com/download/latest_version",target:"_blank",rel:"noopener noreferrer"},p=a("img",{src:"https://img.shields.io/maven-central/v/com.taobao.arthas/arthas-packaging.svg?style=flat-square",alt:"",title:"Arthas"},null,-1),m=a("h3",{id:"download-from-github-releases",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#download-from-github-releases","aria-hidden":"true"},"#"),e(" Download from Github Releases")],-1),b={href:"https://github.com/alibaba/arthas/releases",target:"_blank",rel:"noopener noreferrer"},v=e("https://github.com/alibaba/arthas/releases"),f=o(`<h3 id="use-as-sh" tabindex="-1"><a class="header-anchor" href="#use-as-sh" aria-hidden="true">#</a> Use as.sh</h3><p>Download and unzip, find <code>as.sh</code> in the directory. Start it in bash:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>./as.sh
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>Print usage:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>./as.sh <span class="token parameter variable">-h</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="use-arthas-boot-jar" tabindex="-1"><a class="header-anchor" href="#use-arthas-boot-jar" aria-hidden="true">#</a> Use arthas-boot.jar</h3><p>Download and unzip, find <code>arthas-boot.jar</code> in the directory. Start with <code>java</code> command:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>Print usage:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar <span class="token parameter variable">-h</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as d,o as c,c as i,a,b as e,w as r,e as s,d as o,r as n}from"./app.98a29f3d.js";const p={},u=a("h1",{id:"dump",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#dump","aria-hidden":"true"},"#"),s(" dump")],-1),m={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=cn&id=command-dump",target:"_blank",rel:"noopener noreferrer"},h=a("code",null,"dump",-1),v=s("\u5728\u7EBF\u6559\u7A0B"),b=a("div",{class:"custom-container tip"},[a("p",{class:"custom-container-title"},"\u63D0\u793A"),a("p",null,"dump \u5DF2\u52A0\u8F7D\u7C7B\u7684 bytecode \u5230\u7279\u5B9A\u76EE\u5F55")],-1),g=s("dump \u547D\u4EE4\u5C06 JVM \u4E2D\u5B9E\u9645\u8FD0\u884C\u7684 class \u7684 byte code dump \u5230\u6307\u5B9A\u76EE\u5F55\uFF0C\u9002\u7528\u573A\u666F\u6279\u91CF\u4E0B\u8F7D\u6307\u5B9A\u5305\u76EE\u5F55\u7684 class \u5B57\u8282\u7801\uFF1B\u5982\u9700\u53CD\u7F16\u8BD1\u5355\u4E00\u7C7B\u3001\u5B9E\u65F6\u67E5\u770B\u7C7B\u4FE1\u606F\uFF0C\u53EF\u53C2\u8003 "),L=s("jad"),k=s("\u3002"),C=o(`<h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;"><em>class-pattern</em></td><td style="text-align:left;">\u7C7B\u540D\u8868\u8FBE\u5F0F\u5339\u914D</td></tr><tr><td style="text-align:right;"><code>[c:]</code></td><td style="text-align:left;">\u7C7B\u6240\u5C5E ClassLoader \u7684 hashcode</td></tr><tr><td style="text-align:right;"><code>[classLoaderClass:]</code></td><td style="text-align:left;">\u6307\u5B9A\u6267\u884C\u8868\u8FBE\u5F0F\u7684 ClassLoader \u7684 class name</td></tr><tr><td style="text-align:right;"><code>[d:]</code></td><td style="text-align:left;">\u8BBE\u7F6E\u7C7B\u6587\u4EF6\u7684\u76EE\u6807\u76EE\u5F55</td></tr><tr><td style="text-align:right;">[E]</td><td style="text-align:left;">\u5F00\u542F\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u9ED8\u8BA4\u4E3A\u901A\u914D\u7B26\u5339\u914D</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ dump java.lang.String
|
||||
import{_ as d,o as c,c as i,a,b as e,w as r,e as s,d as o,r as n}from"./app.977e81c1.js";const p={},u=a("h1",{id:"dump",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#dump","aria-hidden":"true"},"#"),s(" dump")],-1),m={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=cn&id=command-dump",target:"_blank",rel:"noopener noreferrer"},h=a("code",null,"dump",-1),v=s("\u5728\u7EBF\u6559\u7A0B"),b=a("div",{class:"custom-container tip"},[a("p",{class:"custom-container-title"},"\u63D0\u793A"),a("p",null,"dump \u5DF2\u52A0\u8F7D\u7C7B\u7684 bytecode \u5230\u7279\u5B9A\u76EE\u5F55")],-1),g=s("dump \u547D\u4EE4\u5C06 JVM \u4E2D\u5B9E\u9645\u8FD0\u884C\u7684 class \u7684 byte code dump \u5230\u6307\u5B9A\u76EE\u5F55\uFF0C\u9002\u7528\u573A\u666F\u6279\u91CF\u4E0B\u8F7D\u6307\u5B9A\u5305\u76EE\u5F55\u7684 class \u5B57\u8282\u7801\uFF1B\u5982\u9700\u53CD\u7F16\u8BD1\u5355\u4E00\u7C7B\u3001\u5B9E\u65F6\u67E5\u770B\u7C7B\u4FE1\u606F\uFF0C\u53EF\u53C2\u8003 "),L=s("jad"),k=s("\u3002"),C=o(`<h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;"><em>class-pattern</em></td><td style="text-align:left;">\u7C7B\u540D\u8868\u8FBE\u5F0F\u5339\u914D</td></tr><tr><td style="text-align:right;"><code>[c:]</code></td><td style="text-align:left;">\u7C7B\u6240\u5C5E ClassLoader \u7684 hashcode</td></tr><tr><td style="text-align:right;"><code>[classLoaderClass:]</code></td><td style="text-align:left;">\u6307\u5B9A\u6267\u884C\u8868\u8FBE\u5F0F\u7684 ClassLoader \u7684 class name</td></tr><tr><td style="text-align:right;"><code>[d:]</code></td><td style="text-align:left;">\u8BBE\u7F6E\u7C7B\u6587\u4EF6\u7684\u76EE\u6807\u76EE\u5F55</td></tr><tr><td style="text-align:right;">[E]</td><td style="text-align:left;">\u5F00\u542F\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u9ED8\u8BA4\u4E3A\u901A\u914D\u7B26\u5339\u914D</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ dump java.lang.String
|
||||
HASHCODE CLASSLOADER LOCATION
|
||||
null /Users/admin/logs/arthas/classdump/java/lang/String.class
|
||||
Affect<span class="token punctuation">(</span>row-cnt:1<span class="token punctuation">)</span> cost <span class="token keyword">in</span> <span class="token number">119</span> ms.
|
@ -1,4 +1,4 @@
|
||||
import{_ as c,o,c as d,a as e,b as a,w as t,e as s,d as r,r as l}from"./app.98a29f3d.js";const u={},p=e("h1",{id:"dump",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dump","aria-hidden":"true"},"#"),s(" dump")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=en&id=command-dump",target:"_blank",rel:"noopener noreferrer"},m=e("code",null,"dump",-1),v=s(" online tutorial"),b=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,"Dump the bytecode for the particular classes to the specified directory.")],-1),g=s("The dump command is used to dump the bytecode of classes actually running in the JVM to a specified directory. It is suitable for bulk downloading the bytecode of classes in a specific package directory. If you need to decompile a single class or view class information in real-time, you can refer to "),_=s("jad"),f=s("."),k=e("h2",{id:"options",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#options","aria-hidden":"true"},"#"),s(" Options")],-1),L=e("thead",null,[e("tr",null,[e("th",{style:{"text-align":"right"}},"Name"),e("th",{style:{"text-align":"left"}},"Specification")])],-1),y=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("em",null,"class-pattern")]),e("td",{style:{"text-align":"left"}},"class name pattern")],-1),x=e("td",{style:{"text-align":"right"}},[e("code",null,"[c:]")],-1),C={style:{"text-align":"left"}},A=s("hashcode of the "),S=s("class loader"),w=s(" that loaded the target class"),O=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("code",null,"[classLoaderClass:]")]),e("td",{style:{"text-align":"left"}},"The class name of the ClassLoader that executes the expression.")],-1),E=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("code",null,"[d:]")]),e("td",{style:{"text-align":"left"}},"set the destination directory for class files")],-1),$=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("code",null,"[E]")]),e("td",{style:{"text-align":"left"}},"turn on regex match, the default behavior is wild card match")],-1),j=r(`<h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ dump java.lang.String
|
||||
import{_ as c,o,c as d,a as e,b as a,w as t,e as s,d as r,r as l}from"./app.977e81c1.js";const u={},p=e("h1",{id:"dump",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dump","aria-hidden":"true"},"#"),s(" dump")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials?language=en&id=command-dump",target:"_blank",rel:"noopener noreferrer"},m=e("code",null,"dump",-1),v=s(" online tutorial"),b=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,"Dump the bytecode for the particular classes to the specified directory.")],-1),g=s("The dump command is used to dump the bytecode of classes actually running in the JVM to a specified directory. It is suitable for bulk downloading the bytecode of classes in a specific package directory. If you need to decompile a single class or view class information in real-time, you can refer to "),_=s("jad"),f=s("."),k=e("h2",{id:"options",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#options","aria-hidden":"true"},"#"),s(" Options")],-1),L=e("thead",null,[e("tr",null,[e("th",{style:{"text-align":"right"}},"Name"),e("th",{style:{"text-align":"left"}},"Specification")])],-1),y=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("em",null,"class-pattern")]),e("td",{style:{"text-align":"left"}},"class name pattern")],-1),x=e("td",{style:{"text-align":"right"}},[e("code",null,"[c:]")],-1),C={style:{"text-align":"left"}},A=s("hashcode of the "),S=s("class loader"),w=s(" that loaded the target class"),O=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("code",null,"[classLoaderClass:]")]),e("td",{style:{"text-align":"left"}},"The class name of the ClassLoader that executes the expression.")],-1),E=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("code",null,"[d:]")]),e("td",{style:{"text-align":"left"}},"set the destination directory for class files")],-1),$=e("tr",null,[e("td",{style:{"text-align":"right"}},[e("code",null,"[E]")]),e("td",{style:{"text-align":"left"}},"turn on regex match, the default behavior is wild card match")],-1),j=r(`<h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ dump java.lang.String
|
||||
HASHCODE CLASSLOADER LOCATION
|
||||
null /Users/admin/logs/arthas/classdump/java/lang/String.class
|
||||
Affect<span class="token punctuation">(</span>row-cnt:1<span class="token punctuation">)</span> cost <span class="token keyword">in</span> <span class="token number">119</span> ms.
|
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-1fe4a616","path":"/doc/dump.html","title":"dump","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u53C2\u6570\u8BF4\u660E","slug":"\u53C2\u6570\u8BF4\u660E","link":"#\u53C2\u6570\u8BF4\u660E","children":[]},{"level":2,"title":"\u4F7F\u7528\u53C2\u8003","slug":"\u4F7F\u7528\u53C2\u8003","link":"#\u4F7F\u7528\u53C2\u8003","children":[]}],"git":{"updatedTime":1693379282000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":3},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/dump.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-1fe4a616","path":"/doc/dump.html","title":"dump","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u53C2\u6570\u8BF4\u660E","slug":"\u53C2\u6570\u8BF4\u660E","link":"#\u53C2\u6570\u8BF4\u660E","children":[]},{"level":2,"title":"\u4F7F\u7528\u53C2\u8003","slug":"\u4F7F\u7528\u53C2\u8003","link":"#\u4F7F\u7528\u53C2\u8003","children":[]}],"git":{"updatedTime":1693379323000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":3},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/dump.md","version":"3.7.2"}');export{e as data};
|
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-471b4d3e","path":"/en/doc/dump.html","title":"dump","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Options","slug":"options","link":"#options","children":[]},{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[]}],"git":{"updatedTime":1693379282000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":3},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/dump.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-471b4d3e","path":"/en/doc/dump.html","title":"dump","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Options","slug":"options","link":"#options","children":[]},{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[]}],"git":{"updatedTime":1693379323000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":3},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/dump.md","version":"3.7.2"}');export{e as data};
|
@ -1,2 +1,2 @@
|
||||
import{_ as s,o as t,c as o,a as e,b as c,e as a,d as r,r as i}from"./app.98a29f3d.js";const l={},d=e("h1",{id:"echo",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#echo","aria-hidden":"true"},"#"),a(" echo")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-echo",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"echo",-1),_=a(" online tutorial"),p=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>write arguments to the standard output.</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token builtin class-name">echo</span> <span class="token string">'hello'</span>
|
||||
import{_ as s,o as t,c as o,a as e,b as c,e as a,d as r,r as i}from"./app.977e81c1.js";const l={},d=e("h1",{id:"echo",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#echo","aria-hidden":"true"},"#"),a(" echo")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-echo",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"echo",-1),_=a(" online tutorial"),p=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>write arguments to the standard output.</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token builtin class-name">echo</span> <span class="token string">'hello'</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,3);function m(g,f){const n=i("ExternalLinkIcon");return t(),o("div",null,[d,e("p",null,[e("a",h,[u,_,c(n)])]),p])}const b=s(l,[["render",m],["__file","echo.html.vue"]]);export{b as default};
|
@ -1,2 +1,2 @@
|
||||
import{_ as s,o,c as t,a as e,b as c,e as a,d as r,r as i}from"./app.98a29f3d.js";const l={},d=e("h1",{id:"echo",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#echo","aria-hidden":"true"},"#"),a(" echo")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-echo",target:"_blank",rel:"noopener noreferrer"},_=e("code",null,"echo",-1),u=a("\u5728\u7EBF\u6559\u7A0B"),p=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u6253\u5370\u53C2\u6570\uFF0C\u548C linux \u91CC\u7684 echo \u547D\u4EE4\u7C7B\u4F3C\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token builtin class-name">echo</span> <span class="token string">'hello'</span>
|
||||
import{_ as s,o,c as t,a as e,b as c,e as a,d as r,r as i}from"./app.977e81c1.js";const l={},d=e("h1",{id:"echo",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#echo","aria-hidden":"true"},"#"),a(" echo")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-echo",target:"_blank",rel:"noopener noreferrer"},_=e("code",null,"echo",-1),u=a("\u5728\u7EBF\u6559\u7A0B"),p=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u6253\u5370\u53C2\u6570\uFF0C\u548C linux \u91CC\u7684 echo \u547D\u4EE4\u7C7B\u4F3C\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token builtin class-name">echo</span> <span class="token string">'hello'</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,3);function m(f,v){const n=i("ExternalLinkIcon");return o(),t("div",null,[d,e("p",null,[e("a",h,[_,u,c(n)])]),p])}const x=s(l,[["render",m],["__file","echo.html.vue"]]);export{x as default};
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
const e=JSON.parse('{"key":"v-d1b46bf2","path":"/en/doc/faq.html","title":"FAQ","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"Where is the log file?","slug":"where-is-the-log-file","link":"#where-is-the-log-file","children":[]},{"level":3,"title":"How much impact does Arthas attach have on the performance of the original process?","slug":"how-much-impact-does-arthas-attach-have-on-the-performance-of-the-original-process","link":"#how-much-impact-does-arthas-attach-have-on-the-performance-of-the-original-process","children":[]},{"level":3,"title":"target process not responding or HotSpot VM not loaded","slug":"target-process-not-responding-or-hotspot-vm-not-loaded","link":"#target-process-not-responding-or-hotspot-vm-not-loaded","children":[]},{"level":3,"title":"Can commands such as trace/watch enhance the classes in jdk?","slug":"can-commands-such-as-trace-watch-enhance-the-classes-in-jdk","link":"#can-commands-such-as-trace-watch-enhance-the-classes-in-jdk","children":[]},{"level":3,"title":"How to view the result in json format","slug":"how-to-view-the-result-in-json-format","link":"#how-to-view-the-result-in-json-format","children":[]},{"level":3,"title":"Can arthas trace native methods","slug":"can-arthas-trace-native-methods","link":"#can-arthas-trace-native-methods","children":[]},{"level":3,"title":"Can arthas view the value of a variable in memory?","slug":"can-arthas-view-the-value-of-a-variable-in-memory","link":"#can-arthas-view-the-value-of-a-variable-in-memory","children":[]},{"level":3,"title":"How to filter method with the same name?","slug":"how-to-filter-method-with-the-same-name","link":"#how-to-filter-method-with-the-same-name","children":[]},{"level":3,"title":"How to watch or trace constructor?","slug":"how-to-watch-or-trace-constructor","link":"#how-to-watch-or-trace-constructor","children":[]},{"level":3,"title":"How to watch or trace inner classes?","slug":"how-to-watch-or-trace-inner-classes","link":"#how-to-watch-or-trace-inner-classes","children":[]},{"level":3,"title":"Enter Unicode characters","slug":"enter-unicode-characters","link":"#enter-unicode-characters","children":[]},{"level":3,"title":"java.lang.ClassFormatError: null, skywalking arthas compatible use","slug":"java-lang-classformaterror-null-skywalking-arthas-compatible-use","link":"#java-lang-classformaterror-null-skywalking-arthas-compatible-use","children":[]},{"level":3,"title":"Can I use arthas offline?","slug":"can-i-use-arthas-offline","link":"#can-i-use-arthas-offline","children":[]},{"level":3,"title":"Attach the process with pid 1 in docker/k8s failed","slug":"attach-the-process-with-pid-1-in-docker-k8s-failed","link":"#attach-the-process-with-pid-1-in-docker-k8s-failed","children":[]},{"level":3,"title":"Why is the new version of Arthas downloaded, but the old version is connected?","slug":"why-is-the-new-version-of-arthas-downloaded-but-the-old-version-is-connected","link":"#why-is-the-new-version-of-arthas-downloaded-but-the-old-version-is-connected","children":[]}],"git":{"updatedTime":1658737180000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/faq.md","version":"3.7.2"}');export{e as data};
|
@ -1,7 +0,0 @@
|
||||
import{_ as h,o as c,c as d,a as e,b as a,w as n,e as t,d as r,r as i}from"./app.98a29f3d.js";const l={},u=e("h1",{id:"faq",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#faq","aria-hidden":"true"},"#"),t(" FAQ")],-1),p={class:"custom-container tip"},m=e("p",{class:"custom-container-title"},"TIP",-1),_=t("For questions that are not in this list, please search in issues. "),b={href:"https://github.com/alibaba/arthas/issues",target:"_blank",rel:"noopener noreferrer"},f=t("https://github.com/alibaba/arthas/issues"),g=e("h3",{id:"where-is-the-log-file",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#where-is-the-log-file","aria-hidden":"true"},"#"),t(" Where is the log file?")],-1),v=e("p",null,[t("Log file path: "),e("code",null,"~/logs/arthas/arthas.log")],-1),w=e("h3",{id:"how-much-impact-does-arthas-attach-have-on-the-performance-of-the-original-process",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#how-much-impact-does-arthas-attach-have-on-the-performance-of-the-original-process","aria-hidden":"true"},"#"),t(" How much impact does Arthas attach have on the performance of the original process?")],-1),k={href:"https://github.com/alibaba/arthas/issues/44",target:"_blank",rel:"noopener noreferrer"},x=t("https://github.com/alibaba/arthas/issues/44"),y=e("h3",{id:"target-process-not-responding-or-hotspot-vm-not-loaded",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#target-process-not-responding-or-hotspot-vm-not-loaded","aria-hidden":"true"},"#"),t(" target process not responding or HotSpot VM not loaded")],-1),j=e("p",null,"com.sun.tools.attach.AttachNotSupportedException: Unable to open socket file: target process not responding or HotSpot VM not loaded",-1),C=e("li",null,"Check whether the current user and the target java process are consistent. If they are inconsistent, switch to the same user. JVM can only attach java processes under the same user.",-1),I=e("li",null,[t("Try to use "),e("code",null,"jstack -l $pid"),t(". If the process does not respond, it means that the process may freeze and fail to respond to the JVM attach signal. So Arthas based on the attach mechanism cannot work. Try to use "),e("code",null,"jmap"),t(" heapdump to analyze.")],-1),V=t("Try to attach math-game in "),q=t("quick-start"),E=t("."),F=t("For more information: "),L={href:"https://github.com/alibaba/arthas/issues/347",target:"_blank",rel:"noopener noreferrer"},S=t("https://github.com/alibaba/arthas/issues/347"),H=r(`<h3 id="can-commands-such-as-trace-watch-enhance-the-classes-in-jdk" tabindex="-1"><a class="header-anchor" href="#can-commands-such-as-trace-watch-enhance-the-classes-in-jdk" aria-hidden="true">#</a> Can commands such as trace/watch enhance the classes in jdk?</h3><p>By default, classes beginning with <code>java.</code> or the classes loaded by the <code>Bootstrap ClassLoader</code> are filtered out, but they can be turned on:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>options unsafe <span class="token boolean">true</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,3),T=t("See more at "),A=t("options"),M=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>To support the jars appended by java.lang.instrument.Instrumentation#appendToBootstrapClassLoaderSearch need to enable unsafe.</p></div><h3 id="how-to-view-the-result-in-json-format" tabindex="-1"><a class="header-anchor" href="#how-to-view-the-result-in-json-format" aria-hidden="true">#</a> How to view the result in <code>json</code> format</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>options json-format <span class="token boolean">true</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div>`,3),B=t("See more at "),N=t("options"),O=e("h3",{id:"can-arthas-trace-native-methods",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#can-arthas-trace-native-methods","aria-hidden":"true"},"#"),t(" Can arthas trace native methods")],-1),Y=e("p",null,"No.",-1),z=e("h3",{id:"can-arthas-view-the-value-of-a-variable-in-memory",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#can-arthas-view-the-value-of-a-variable-in-memory","aria-hidden":"true"},"#"),t(" Can arthas view the value of a variable in memory?")],-1),J=t("You can use "),R=e("code",null,"vmtool",-1),U=t(" command."),W=t("You can use some tricks to intercept the object with the "),$=e("code",null,"tt",-1),G=t(" command, or fetch it from a static method."),P=e("h3",{id:"how-to-filter-method-with-the-same-name",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#how-to-filter-method-with-the-same-name","aria-hidden":"true"},"#"),t(" How to filter method with the same name?")],-1),Q=t("You can used all variables in "),D=t("fundamental fields in expressions"),K=t(" for the condition express to filter method with the same name, you can use the number of parameters "),X=e("code",null,"params.length ==1",-1),Z=t(",parameter type "),ee=e("code",null,"params[0] instanceof java.lang.Integer",-1),te=t(",return value type "),ae=e("code",null,"returnObj instanceof java.util.List",-1),se=t(" and so on in one or more combinations as condition express."),oe=t("You can use "),ne=e("code",null,"-v",-1),re=t(" to view the condition express result "),ie={href:"https://github.com/alibaba/arthas/issues/1348",target:"_blank",rel:"noopener noreferrer"},he=t("https://github.com/alibaba/arthas/issues/1348"),ce=t("example "),de=t("math-game"),le=r(`<div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">watch</span> demo.MathGame primeFactors <span class="token string">'{params,returnObj,throwExp}'</span> <span class="token string">'params.length >0 && returnObj instanceof java.util.List'</span> <span class="token parameter variable">-v</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="how-to-watch-or-trace-constructor" tabindex="-1"><a class="header-anchor" href="#how-to-watch-or-trace-constructor" aria-hidden="true">#</a> How to watch or trace constructor?</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">watch</span> demo.MathGame <span class="token operator"><</span>init<span class="token operator">></span> <span class="token string">'{params,returnObj,throwExp}'</span> <span class="token parameter variable">-v</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="how-to-watch-or-trace-inner-classes" tabindex="-1"><a class="header-anchor" href="#how-to-watch-or-trace-inner-classes" aria-hidden="true">#</a> How to watch or trace inner classes?</h3><p>In the JVM specification the name of inner classes is <code>OuterClass$InnerClass</code>.</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">watch</span> OuterClass<span class="token variable">$InnerClass</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="enter-unicode-characters" tabindex="-1"><a class="header-anchor" href="#enter-unicode-characters" aria-hidden="true">#</a> Enter Unicode characters</h3><p>Convert Unicode characters to <code>\\u</code> representation:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>ognl <span class="token string">'@java.lang.System@out.println("Hello \\u4e2d\\u6587")'</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="java-lang-classformaterror-null-skywalking-arthas-compatible-use" tabindex="-1"><a class="header-anchor" href="#java-lang-classformaterror-null-skywalking-arthas-compatible-use" aria-hidden="true">#</a> java.lang.ClassFormatError: null, skywalking arthas compatible use</h3><p>When error log appear <code>java.lang.ClassFormatError: null</code>, it is usually modified by other bytecode tools that are not compatible with arthas modified bytecode.</p>`,11),ue=t("For example: use skywalking V8.1.0 below "),pe={href:"https://github.com/alibaba/arthas/issues/1141",target:"_blank",rel:"noopener noreferrer"},me=t("cannot trace, watch classes enhanced by skywalking agent"),_e=t(", V8.1.0 or above is compatible, refer to skywalking configuration for more details. "),be={href:"https://github.com/apache/skywalking/blob/master/docs/en/FAQ/Compatible-with-other-javaagent-bytecode-processing.md#",target:"_blank",rel:"noopener noreferrer"},fe=t("skywalking compatible with other javaagent bytecode processing"),ge=t("."),ve=e("h4",{id:"class-redefinition-failed-attempted-to-change-the-schema-add-remove-fields",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#class-redefinition-failed-attempted-to-change-the-schema-add-remove-fields","aria-hidden":"true"},"#"),t(" class redefinition failed: attempted to change the schema (add/remove fields)")],-1),we=t("Reference: "),ke={href:"https://github.com/alibaba/arthas/issues/2165",target:"_blank",rel:"noopener noreferrer"},xe=t("https://github.com/alibaba/arthas/issues/2165"),ye=e("h3",{id:"can-i-use-arthas-offline",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#can-i-use-arthas-offline","aria-hidden":"true"},"#"),t(" Can I use arthas offline?")],-1),je=t("Yes. Just download the full size package and unzip it, refer to: "),Ce=t("Download"),Ie=t("."),Ve=e("h3",{id:"attach-the-process-with-pid-1-in-docker-k8s-failed",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#attach-the-process-with-pid-1-in-docker-k8s-failed","aria-hidden":"true"},"#"),t(" Attach the process with pid 1 in docker/k8s failed")],-1),qe=t("Reference: "),Ee={href:"https://github.com/alibaba/arthas/issues/362#issuecomment-448185416",target:"_blank",rel:"noopener noreferrer"},Fe=t("https://github.com/alibaba/arthas/issues/362#issuecomment-448185416"),Le=e("h3",{id:"why-is-the-new-version-of-arthas-downloaded-but-the-old-version-is-connected",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#why-is-the-new-version-of-arthas-downloaded-but-the-old-version-is-connected","aria-hidden":"true"},"#"),t(" Why is the new version of Arthas downloaded, but the old version is connected?")],-1),Se=e("p",null,[t("For example, the started version of "),e("code",null,"as.sh/arthas-boot.jar"),t(" is 3.5."),e("em",null,", but after connecting, the printed arthas version is 3.4."),t(".")],-1),He=e("p",null,[t("It may be that the target process has been diagnosed with the old version of arthas before. You can execute "),e("code",null,"stop"),t(" to stop the old version of arthas, and then reuse the new version to attach.")],-1);function Te(Ae,Me){const s=i("ExternalLinkIcon"),o=i("RouterLink");return c(),d("div",null,[u,e("div",p,[m,e("p",null,[_,e("a",b,[f,a(s)])])]),g,v,w,e("p",null,[e("a",k,[x,a(s)])]),y,j,e("ol",null,[C,I,e("li",null,[V,a(o,{to:"/en/doc/quick-start.html"},{default:n(()=>[q]),_:1}),E]),e("li",null,[F,e("a",L,[S,a(s)])])]),H,e("p",null,[T,a(o,{to:"/en/doc/options.html"},{default:n(()=>[A]),_:1})]),M,e("p",null,[B,a(o,{to:"/en/doc/options.html"},{default:n(()=>[N]),_:1})]),O,Y,z,e("ol",null,[e("li",null,[J,a(o,{to:"/en/doc/vmtool.html"},{default:n(()=>[R]),_:1}),U]),e("li",null,[W,a(o,{to:"/en/doc/tt.html"},{default:n(()=>[$]),_:1}),G])]),P,e("p",null,[Q,a(o,{to:"/en/doc/advice-class.html"},{default:n(()=>[D]),_:1}),K,X,Z,ee,te,ae,se]),e("p",null,[oe,ne,re,e("a",ie,[he,a(s)])]),e("p",null,[ce,a(o,{to:"/en/doc/quick-start.html"},{default:n(()=>[de]),_:1})]),le,e("p",null,[ue,e("a",pe,[me,a(s)]),_e,e("a",be,[fe,a(s)]),ge]),ve,e("p",null,[we,e("a",ke,[xe,a(s)])]),ye,e("p",null,[je,a(o,{to:"/en/doc/download.html"},{default:n(()=>[Ce]),_:1}),Ie]),Ve,e("p",null,[qe,e("a",Ee,[Fe,a(s)])]),Le,Se,He])}const Ne=h(l,[["render",Te],["__file","faq.html.vue"]]);export{Ne as default};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
const t=JSON.parse('{"key":"v-d070981a","path":"/doc/faq.html","title":"FAQ","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"\u65E5\u5FD7\u6587\u4EF6\u5728\u54EA\u91CC\uFF1F","slug":"\u65E5\u5FD7\u6587\u4EF6\u5728\u54EA\u91CC","link":"#\u65E5\u5FD7\u6587\u4EF6\u5728\u54EA\u91CC","children":[]},{"level":3,"title":"Arthas attach \u4E4B\u540E\u5BF9\u539F\u8FDB\u7A0B\u6027\u80FD\u6709\u591A\u5927\u7684\u5F71\u54CD","slug":"arthas-attach-\u4E4B\u540E\u5BF9\u539F\u8FDB\u7A0B\u6027\u80FD\u6709\u591A\u5927\u7684\u5F71\u54CD","link":"#arthas-attach-\u4E4B\u540E\u5BF9\u539F\u8FDB\u7A0B\u6027\u80FD\u6709\u591A\u5927\u7684\u5F71\u54CD","children":[]},{"level":3,"title":"target process not responding or HotSpot VM not loaded","slug":"target-process-not-responding-or-hotspot-vm-not-loaded","link":"#target-process-not-responding-or-hotspot-vm-not-loaded","children":[]},{"level":3,"title":"trace/watch \u7B49\u547D\u4EE4\u80FD\u5426\u589E\u5F3A jdk \u91CC\u7684\u7C7B\uFF1F","slug":"trace-watch-\u7B49\u547D\u4EE4\u80FD\u5426\u589E\u5F3A-jdk-\u91CC\u7684\u7C7B","link":"#trace-watch-\u7B49\u547D\u4EE4\u80FD\u5426\u589E\u5F3A-jdk-\u91CC\u7684\u7C7B","children":[]},{"level":3,"title":"\u600E\u4E48\u4EE5json\u683C\u5F0F\u67E5\u770B\u7ED3\u679C","slug":"\u600E\u4E48\u4EE5json\u683C\u5F0F\u67E5\u770B\u7ED3\u679C","link":"#\u600E\u4E48\u4EE5json\u683C\u5F0F\u67E5\u770B\u7ED3\u679C","children":[]},{"level":3,"title":"Arthas \u80FD\u5426\u8DDF\u8E2A native \u51FD\u6570","slug":"arthas-\u80FD\u5426\u8DDF\u8E2A-native-\u51FD\u6570","link":"#arthas-\u80FD\u5426\u8DDF\u8E2A-native-\u51FD\u6570","children":[]},{"level":3,"title":"\u80FD\u4E0D\u80FD\u67E5\u770B\u5185\u5B58\u91CC\u67D0\u4E2A\u53D8\u91CF\u7684\u503C","slug":"\u80FD\u4E0D\u80FD\u67E5\u770B\u5185\u5B58\u91CC\u67D0\u4E2A\u53D8\u91CF\u7684\u503C","link":"#\u80FD\u4E0D\u80FD\u67E5\u770B\u5185\u5B58\u91CC\u67D0\u4E2A\u53D8\u91CF\u7684\u503C","children":[]},{"level":3,"title":"\u65B9\u6CD5\u540C\u540D\u8FC7\u6EE4","slug":"\u65B9\u6CD5\u540C\u540D\u8FC7\u6EE4","link":"#\u65B9\u6CD5\u540C\u540D\u8FC7\u6EE4","children":[]},{"level":3,"title":"\u600E\u4E48 watch\u3001trace \u6784\u9020\u51FD\u6570 \uFF1F","slug":"\u600E\u4E48-watch\u3001trace-\u6784\u9020\u51FD\u6570","link":"#\u600E\u4E48-watch\u3001trace-\u6784\u9020\u51FD\u6570","children":[]},{"level":3,"title":"\u600E\u6837 watch\u3001trace \u5185\u90E8\u7C7B\uFF1F","slug":"\u600E\u6837-watch\u3001trace-\u5185\u90E8\u7C7B","link":"#\u600E\u6837-watch\u3001trace-\u5185\u90E8\u7C7B","children":[]},{"level":3,"title":"\u8F93\u5165\u4E2D\u6587/Unicode \u5B57\u7B26","slug":"\u8F93\u5165\u4E2D\u6587-unicode-\u5B57\u7B26","link":"#\u8F93\u5165\u4E2D\u6587-unicode-\u5B57\u7B26","children":[]},{"level":3,"title":"java.lang.ClassFormatError: null\u3001skywalking arthas \u517C\u5BB9\u4F7F\u7528","slug":"java-lang-classformaterror-null\u3001skywalking-arthas-\u517C\u5BB9\u4F7F\u7528","link":"#java-lang-classformaterror-null\u3001skywalking-arthas-\u517C\u5BB9\u4F7F\u7528","children":[]},{"level":3,"title":"Arthas \u80FD\u4E0D\u80FD\u79BB\u7EBF\u4F7F\u7528","slug":"arthas-\u80FD\u4E0D\u80FD\u79BB\u7EBF\u4F7F\u7528","link":"#arthas-\u80FD\u4E0D\u80FD\u79BB\u7EBF\u4F7F\u7528","children":[]},{"level":3,"title":"Attach docker/k8s \u91CC\u7684 pid \u4E3A 1 \u7684\u8FDB\u7A0B\u5931\u8D25","slug":"attach-docker-k8s-\u91CC\u7684-pid-\u4E3A-1-\u7684\u8FDB\u7A0B\u5931\u8D25","link":"#attach-docker-k8s-\u91CC\u7684-pid-\u4E3A-1-\u7684\u8FDB\u7A0B\u5931\u8D25","children":[]},{"level":3,"title":"\u4E3A\u4EC0\u4E48\u4E0B\u8F7D\u4E86\u65B0\u7248\u672C\u7684 Arthas\uFF0C\u8FDE\u63A5\u7684\u5374\u662F\u65E7\u7248\u672C\uFF1F","slug":"\u4E3A\u4EC0\u4E48\u4E0B\u8F7D\u4E86\u65B0\u7248\u672C\u7684-arthas-\u8FDE\u63A5\u7684\u5374\u662F\u65E7\u7248\u672C","link":"#\u4E3A\u4EC0\u4E48\u4E0B\u8F7D\u4E86\u65B0\u7248\u672C\u7684-arthas-\u8FDE\u63A5\u7684\u5374\u662F\u65E7\u7248\u672C","children":[]}],"git":{"updatedTime":1658737180000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/faq.md","version":"3.7.2"}');export{t as data};
|
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
const e=JSON.parse('{"key":"v-d1b46bf2","path":"/en/doc/faq.html","title":"FAQ","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"Where is the log file?","slug":"where-is-the-log-file","link":"#where-is-the-log-file","children":[]},{"level":3,"title":"telnet: connect to address 127.0.0.1: Connection refused","slug":"telnet-connect-to-address-127-0-0-1-connection-refused","link":"#telnet-connect-to-address-127-0-0-1-connection-refused","children":[]},{"level":3,"title":"How much impact does Arthas attach have on the performance of the original process?","slug":"how-much-impact-does-arthas-attach-have-on-the-performance-of-the-original-process","link":"#how-much-impact-does-arthas-attach-have-on-the-performance-of-the-original-process","children":[]},{"level":3,"title":"target process not responding or HotSpot VM not loaded","slug":"target-process-not-responding-or-hotspot-vm-not-loaded","link":"#target-process-not-responding-or-hotspot-vm-not-loaded","children":[]},{"level":3,"title":"Can commands such as trace/watch enhance the classes in jdk?","slug":"can-commands-such-as-trace-watch-enhance-the-classes-in-jdk","link":"#can-commands-such-as-trace-watch-enhance-the-classes-in-jdk","children":[]},{"level":3,"title":"How to view the result in json format","slug":"how-to-view-the-result-in-json-format","link":"#how-to-view-the-result-in-json-format","children":[]},{"level":3,"title":"Can arthas trace native methods","slug":"can-arthas-trace-native-methods","link":"#can-arthas-trace-native-methods","children":[]},{"level":3,"title":"Can arthas view the value of a variable in memory?","slug":"can-arthas-view-the-value-of-a-variable-in-memory","link":"#can-arthas-view-the-value-of-a-variable-in-memory","children":[]},{"level":3,"title":"How to filter method with the same name?","slug":"how-to-filter-method-with-the-same-name","link":"#how-to-filter-method-with-the-same-name","children":[]},{"level":3,"title":"How to watch or trace constructor?","slug":"how-to-watch-or-trace-constructor","link":"#how-to-watch-or-trace-constructor","children":[]},{"level":3,"title":"How to watch or trace inner classes?","slug":"how-to-watch-or-trace-inner-classes","link":"#how-to-watch-or-trace-inner-classes","children":[]},{"level":3,"title":"Does it support watch and trace lambda classes?","slug":"does-it-support-watch-and-trace-lambda-classes","link":"#does-it-support-watch-and-trace-lambda-classes","children":[]},{"level":3,"title":"Enter Unicode characters","slug":"enter-unicode-characters","link":"#enter-unicode-characters","children":[]},{"level":3,"title":"java.lang.ClassFormatError: null, skywalking arthas compatible use","slug":"java-lang-classformaterror-null-skywalking-arthas-compatible-use","link":"#java-lang-classformaterror-null-skywalking-arthas-compatible-use","children":[]},{"level":3,"title":"Can I use arthas offline?","slug":"can-i-use-arthas-offline","link":"#can-i-use-arthas-offline","children":[]},{"level":3,"title":"How to use the specified version of Arthas without using the automatic upgrade version?","slug":"how-to-use-the-specified-version-of-arthas-without-using-the-automatic-upgrade-version","link":"#how-to-use-the-specified-version-of-arthas-without-using-the-automatic-upgrade-version","children":[]},{"level":3,"title":"Attach the process with pid 1 in docker/k8s failed","slug":"attach-the-process-with-pid-1-in-docker-k8s-failed","link":"#attach-the-process-with-pid-1-in-docker-k8s-failed","children":[]},{"level":3,"title":"Why is the new version of Arthas downloaded, but the old version is connected?","slug":"why-is-the-new-version-of-arthas-downloaded-but-the-old-version-is-connected","link":"#why-is-the-new-version-of-arthas-downloaded-but-the-old-version-is-connected","children":[]},{"level":3,"title":"The spring bean cglib object is obtained in the ognl expression, but the field is null","slug":"the-spring-bean-cglib-object-is-obtained-in-the-ognl-expression-but-the-field-is-null","link":"#the-spring-bean-cglib-object-is-obtained-in-the-ognl-expression-but-the-field-is-null","children":[]}],"git":{"updatedTime":1706174141000,"contributors":[{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":5},{"name":"hengyunabc","email":"hengyunabc@users.noreply.github.com","commits":3},{"name":"Fatpandac","email":"i@fatpandac.com","commits":1}]},"filePathRelative":"en/doc/faq.md","version":"3.7.2"}');export{e as data};
|
@ -1 +1 @@
|
||||
const t=JSON.parse('{"key":"v-78c35af6","path":"/doc/getstatic.html","title":"getstatic","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"\u4F7F\u7528\u53C2\u8003","slug":"\u4F7F\u7528\u53C2\u8003","link":"#\u4F7F\u7528\u53C2\u8003","children":[]}],"git":{"updatedTime":1693379282000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/getstatic.md","version":"3.7.2"}');export{t as data};
|
||||
const t=JSON.parse('{"key":"v-78c35af6","path":"/doc/getstatic.html","title":"getstatic","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":3,"title":"\u4F7F\u7528\u53C2\u8003","slug":"\u4F7F\u7528\u53C2\u8003","link":"#\u4F7F\u7528\u53C2\u8003","children":[]}],"git":{"updatedTime":1698396365000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"haoyixing","email":"haoyixing@kuaishou.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/getstatic.md","version":"3.7.2"}');export{t as data};
|
@ -0,0 +1 @@
|
||||
const e=JSON.parse('{"key":"v-2f908999","path":"/en/doc/getstatic.html","title":"getstatic","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[]}],"git":{"updatedTime":1698396365000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"haoyixing","email":"haoyixing@kuaishou.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/getstatic.md","version":"3.7.2"}');export{e as data};
|
@ -1 +0,0 @@
|
||||
const e=JSON.parse('{"key":"v-2f908999","path":"/en/doc/getstatic.html","title":"getstatic","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[]}],"git":{"updatedTime":1693379282000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/getstatic.md","version":"3.7.2"}');export{e as data};
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as t,c as a,a as e,b as l,e as n,d as r,r as d}from"./app.98a29f3d.js";const c={},v=e("h1",{id:"grep",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#grep","aria-hidden":"true"},"#"),n(" grep")],-1),o={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-grep",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"grep",-1),m=n("\u5728\u7EBF\u6559\u7A0B"),p=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u7C7B\u4F3C\u4F20\u7EDF\u7684<code>grep</code>\u547D\u4EE4\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code> USAGE:
|
||||
import{_ as s,o as t,c as a,a as e,b as l,e as n,d as r,r as d}from"./app.977e81c1.js";const c={},v=e("h1",{id:"grep",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#grep","aria-hidden":"true"},"#"),n(" grep")],-1),o={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-grep",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"grep",-1),m=n("\u5728\u7EBF\u6559\u7A0B"),p=r(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u7C7B\u4F3C\u4F20\u7EDF\u7684<code>grep</code>\u547D\u4EE4\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code> USAGE:
|
||||
grep [-A <value>] [-B <value>] [-C <value>] [-h] [-i] [-v] [-n] [-m <value>] [-e] [--trim-end] pattern
|
||||
|
||||
SUMMARY:
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as t,c as a,a as e,b as l,e as n,d as r,r as d}from"./app.98a29f3d.js";const c={},o=e("h1",{id:"grep",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#grep","aria-hidden":"true"},"#"),n(" grep")],-1),v={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-grep",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"grep",-1),m=n(" online tutorial"),p=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Similar to the traditional <code>grep</code> command.</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code> USAGE:
|
||||
import{_ as s,o as t,c as a,a as e,b as l,e as n,d as r,r as d}from"./app.977e81c1.js";const c={},o=e("h1",{id:"grep",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#grep","aria-hidden":"true"},"#"),n(" grep")],-1),v={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-grep",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"grep",-1),m=n(" online tutorial"),p=r(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Similar to the traditional <code>grep</code> command.</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code> USAGE:
|
||||
grep [-A <value>] [-B <value>] [-C <value>] [-h] [-i] [-v] [-n] [-m <value>] [-e] [--trim-end] pattern
|
||||
|
||||
SUMMARY:
|
@ -1,4 +1,4 @@
|
||||
import{_ as e,o as p,c as o,a as s,b as i,w as c,d as a,e as n,r as l}from"./app.98a29f3d.js";const u={},r=a(`<h1 id="groovy" tabindex="-1"><a class="header-anchor" href="#groovy" aria-hidden="true">#</a> groovy</h1><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Arthas support groovy scripting to allow user to use script like BTrace. It is possible to use if/for/switch/while in groovy scripting, but has more limitations compared to BTrace.</p></div><h3 id="limitations" tabindex="-1"><a class="header-anchor" href="#limitations" aria-hidden="true">#</a> Limitations</h3><ol><li>Prohibit from alternating the original logic. Like <code>watch</code> command, The major purpose of scripting is monitoring and observing.</li><li>Only allow to monitor at the stages of before/success/exception/finish on one method.</li></ol><h3 id="parameters" tabindex="-1"><a class="header-anchor" href="#parameters" aria-hidden="true">#</a> Parameters</h3><table><thead><tr><th style="text-align:right;">Parameter</th><th style="text-align:left;">Explanation</th></tr></thead><tbody><tr><td style="text-align:right;"><em>class-pattern</em></td><td style="text-align:left;">class name pattern</td></tr><tr><td style="text-align:right;"><em>method-pattern</em></td><td style="text-align:left;">method name pattern</td></tr><tr><td style="text-align:right;"><em>script-filepath</em></td><td style="text-align:left;">the absolute path of the groovy script</td></tr><tr><td style="text-align:right;">[S]</td><td style="text-align:left;">match all sub classes</td></tr><tr><td style="text-align:right;">[E]</td><td style="text-align:left;">enable regex match, the default is wildcard match</td></tr></tbody></table><p>Note: the third parameter <code>script-filepath</code> must be the absolute path of the groovy script, for example <code>/tmp/test.groovy</code>. It is not recommended to use relative path, e.g. <code>./test.groovy</code>.</p><h3 id="explanation-on-the-important-callbacks" tabindex="-1"><a class="header-anchor" href="#explanation-on-the-important-callbacks" aria-hidden="true">#</a> Explanation on the important callbacks</h3><div class="language-java ext-java line-numbers-mode"><pre class="language-java"><code><span class="token doc-comment comment">/**
|
||||
import{_ as e,o as p,c as o,a as s,b as i,w as c,d as a,e as n,r as l}from"./app.977e81c1.js";const u={},r=a(`<h1 id="groovy" tabindex="-1"><a class="header-anchor" href="#groovy" aria-hidden="true">#</a> groovy</h1><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Arthas support groovy scripting to allow user to use script like BTrace. It is possible to use if/for/switch/while in groovy scripting, but has more limitations compared to BTrace.</p></div><h3 id="limitations" tabindex="-1"><a class="header-anchor" href="#limitations" aria-hidden="true">#</a> Limitations</h3><ol><li>Prohibit from alternating the original logic. Like <code>watch</code> command, The major purpose of scripting is monitoring and observing.</li><li>Only allow to monitor at the stages of before/success/exception/finish on one method.</li></ol><h3 id="parameters" tabindex="-1"><a class="header-anchor" href="#parameters" aria-hidden="true">#</a> Parameters</h3><table><thead><tr><th style="text-align:right;">Parameter</th><th style="text-align:left;">Explanation</th></tr></thead><tbody><tr><td style="text-align:right;"><em>class-pattern</em></td><td style="text-align:left;">class name pattern</td></tr><tr><td style="text-align:right;"><em>method-pattern</em></td><td style="text-align:left;">method name pattern</td></tr><tr><td style="text-align:right;"><em>script-filepath</em></td><td style="text-align:left;">the absolute path of the groovy script</td></tr><tr><td style="text-align:right;">[S]</td><td style="text-align:left;">match all sub classes</td></tr><tr><td style="text-align:right;">[E]</td><td style="text-align:left;">enable regex match, the default is wildcard match</td></tr></tbody></table><p>Note: the third parameter <code>script-filepath</code> must be the absolute path of the groovy script, for example <code>/tmp/test.groovy</code>. It is not recommended to use relative path, e.g. <code>./test.groovy</code>.</p><h3 id="explanation-on-the-important-callbacks" tabindex="-1"><a class="header-anchor" href="#explanation-on-the-important-callbacks" aria-hidden="true">#</a> Explanation on the important callbacks</h3><div class="language-java ext-java line-numbers-mode"><pre class="language-java"><code><span class="token doc-comment comment">/**
|
||||
* Listeners for script to enhance the class
|
||||
*/</span>
|
||||
<span class="token keyword">interface</span> <span class="token class-name">ScriptListener</span> <span class="token punctuation">{</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as e,o as p,c,a as s,b as i,w as o,d as a,e as n,r as l}from"./app.98a29f3d.js";const u={},d=a(`<h1 id="groovy" tabindex="-1"><a class="header-anchor" href="#groovy" aria-hidden="true">#</a> groovy</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>Arthas \u652F\u6301 groovy \u811A\u672C\u589E\u5F3A\uFF0C\u5141\u8BB8\u50CF BTrace \u4E00\u6837\u7F16\u5199\u811A\u672C\u6765\u89E3\u51B3\u95EE\u9898\uFF0C\u53EF\u4EE5\u5728 groovy \u811A\u672C\u4E2D\u8FDB\u884C if/for/switch/while \u7B49\u63A7\u5236\u8BED\u53E5\uFF0C\u4E0D\u53D7\u9650\u5236\uFF0C\u4F46\u76F8\u6BD4 BTrace \u800C\u8A00\u62E5\u6709\u66F4\u591A\u7684\u9650\u5236\u8303\u56F4\u3002</p></div><h3 id="\u9650\u5236\u5185\u5BB9" tabindex="-1"><a class="header-anchor" href="#\u9650\u5236\u5185\u5BB9" aria-hidden="true">#</a> \u9650\u5236\u5185\u5BB9</h3><ol><li>\u7981\u6B62\u6539\u53D8\u539F\u6709\u903B\u8F91\uFF0C\u4E0E watch \u7B49\u547D\u4EE4\u4E00\u6837\uFF0C\u91CD\u70B9\u4FDD\u8BC1\u7684\u662F\u76D1\u542C\u548C\u89C2\u5BDF\u3002</li><li>\u53EA\u5141\u8BB8\u5728\u65B9\u6CD5\u7684 before/success/exception/finish \u56DB\u4E2A\u73AF\u8282\u8FDB\u884C\u76D1\u542C\u3002</li></ol><h3 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h3><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;"><em>class-pattern</em></td><td style="text-align:left;">\u7C7B\u540D\u8868\u8FBE\u5F0F\u5339\u914D</td></tr><tr><td style="text-align:right;"><em>method-pattern</em></td><td style="text-align:left;">\u65B9\u6CD5\u540D\u8868\u8FBE\u5F0F\u5339\u914D</td></tr><tr><td style="text-align:right;"><em>script-filepath</em></td><td style="text-align:left;">groovy \u811A\u672C\u7684\u7EDD\u5BF9\u8DEF\u5F84</td></tr><tr><td style="text-align:right;">[S]</td><td style="text-align:left;">\u5339\u914D\u6240\u6709\u7684\u5B50\u7C7B</td></tr><tr><td style="text-align:right;">[E]</td><td style="text-align:left;">\u5F00\u542F\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u9ED8\u8BA4\u4E3A\u901A\u914D\u7B26\u5339\u914D</td></tr></tbody></table><p>\u9700\u8981\u8BF4\u660E\u7684\u662F\uFF0C\u7B2C\u4E09\u4E2A\u8F93\u5165\u53C2\u6570\u662F\u811A\u672C\u7684\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u6BD4\u5982 <code>/tmp/test.groovy</code>\uFF0C\u4E0D\u5EFA\u8BAE\u8F93\u5165\u76F8\u5BF9\u8DEF\u5F84\uFF0C\u6BD4\u5982 <code>./test.groovy</code></p><h3 id="\u4E94\u4E2A\u5173\u952E\u51FD\u6570\u58F0\u660E" tabindex="-1"><a class="header-anchor" href="#\u4E94\u4E2A\u5173\u952E\u51FD\u6570\u58F0\u660E" aria-hidden="true">#</a> \u4E94\u4E2A\u5173\u952E\u51FD\u6570\u58F0\u660E</h3><div class="language-java ext-java line-numbers-mode"><pre class="language-java"><code><span class="token doc-comment comment">/**
|
||||
import{_ as e,o as p,c,a as s,b as i,w as o,d as a,e as n,r as l}from"./app.977e81c1.js";const u={},d=a(`<h1 id="groovy" tabindex="-1"><a class="header-anchor" href="#groovy" aria-hidden="true">#</a> groovy</h1><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>Arthas \u652F\u6301 groovy \u811A\u672C\u589E\u5F3A\uFF0C\u5141\u8BB8\u50CF BTrace \u4E00\u6837\u7F16\u5199\u811A\u672C\u6765\u89E3\u51B3\u95EE\u9898\uFF0C\u53EF\u4EE5\u5728 groovy \u811A\u672C\u4E2D\u8FDB\u884C if/for/switch/while \u7B49\u63A7\u5236\u8BED\u53E5\uFF0C\u4E0D\u53D7\u9650\u5236\uFF0C\u4F46\u76F8\u6BD4 BTrace \u800C\u8A00\u62E5\u6709\u66F4\u591A\u7684\u9650\u5236\u8303\u56F4\u3002</p></div><h3 id="\u9650\u5236\u5185\u5BB9" tabindex="-1"><a class="header-anchor" href="#\u9650\u5236\u5185\u5BB9" aria-hidden="true">#</a> \u9650\u5236\u5185\u5BB9</h3><ol><li>\u7981\u6B62\u6539\u53D8\u539F\u6709\u903B\u8F91\uFF0C\u4E0E watch \u7B49\u547D\u4EE4\u4E00\u6837\uFF0C\u91CD\u70B9\u4FDD\u8BC1\u7684\u662F\u76D1\u542C\u548C\u89C2\u5BDF\u3002</li><li>\u53EA\u5141\u8BB8\u5728\u65B9\u6CD5\u7684 before/success/exception/finish \u56DB\u4E2A\u73AF\u8282\u8FDB\u884C\u76D1\u542C\u3002</li></ol><h3 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h3><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;"><em>class-pattern</em></td><td style="text-align:left;">\u7C7B\u540D\u8868\u8FBE\u5F0F\u5339\u914D</td></tr><tr><td style="text-align:right;"><em>method-pattern</em></td><td style="text-align:left;">\u65B9\u6CD5\u540D\u8868\u8FBE\u5F0F\u5339\u914D</td></tr><tr><td style="text-align:right;"><em>script-filepath</em></td><td style="text-align:left;">groovy \u811A\u672C\u7684\u7EDD\u5BF9\u8DEF\u5F84</td></tr><tr><td style="text-align:right;">[S]</td><td style="text-align:left;">\u5339\u914D\u6240\u6709\u7684\u5B50\u7C7B</td></tr><tr><td style="text-align:right;">[E]</td><td style="text-align:left;">\u5F00\u542F\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u9ED8\u8BA4\u4E3A\u901A\u914D\u7B26\u5339\u914D</td></tr></tbody></table><p>\u9700\u8981\u8BF4\u660E\u7684\u662F\uFF0C\u7B2C\u4E09\u4E2A\u8F93\u5165\u53C2\u6570\u662F\u811A\u672C\u7684\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u6BD4\u5982 <code>/tmp/test.groovy</code>\uFF0C\u4E0D\u5EFA\u8BAE\u8F93\u5165\u76F8\u5BF9\u8DEF\u5F84\uFF0C\u6BD4\u5982 <code>./test.groovy</code></p><h3 id="\u4E94\u4E2A\u5173\u952E\u51FD\u6570\u58F0\u660E" tabindex="-1"><a class="header-anchor" href="#\u4E94\u4E2A\u5173\u952E\u51FD\u6570\u58F0\u660E" aria-hidden="true">#</a> \u4E94\u4E2A\u5173\u952E\u51FD\u6570\u58F0\u660E</h3><div class="language-java ext-java line-numbers-mode"><pre class="language-java"><code><span class="token doc-comment comment">/**
|
||||
* \u589E\u5F3A\u811A\u672C\u76D1\u542C\u5668
|
||||
*/</span>
|
||||
<span class="token keyword">interface</span> <span class="token class-name">ScriptListener</span> <span class="token punctuation">{</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as t,c as i,a,b as d,e,d as p,r as o}from"./app.98a29f3d.js";const c={},r=a("h1",{id:"heapdump",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#heapdump","aria-hidden":"true"},"#"),e(" heapdump")],-1),l={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-heapdump",target:"_blank",rel:"noopener noreferrer"},u=a("code",null,"heapdump",-1),h=e(" online tutorial"),m=p(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>dump java heap in hprof binary format, like <code>jmap</code>.</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><h3 id="dump-to-file" tabindex="-1"><a class="header-anchor" href="#dump-to-file" aria-hidden="true">#</a> Dump to file</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@58205<span class="token punctuation">]</span>$ heapdump arthas-output/dump.hprof
|
||||
import{_ as s,o as t,c as i,a,b as d,e,d as p,r as o}from"./app.977e81c1.js";const c={},r=a("h1",{id:"heapdump",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#heapdump","aria-hidden":"true"},"#"),e(" heapdump")],-1),l={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-heapdump",target:"_blank",rel:"noopener noreferrer"},u=a("code",null,"heapdump",-1),h=e(" online tutorial"),m=p(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>dump java heap in hprof binary format, like <code>jmap</code>.</p></div><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><h3 id="dump-to-file" tabindex="-1"><a class="header-anchor" href="#dump-to-file" aria-hidden="true">#</a> Dump to file</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@58205<span class="token punctuation">]</span>$ heapdump arthas-output/dump.hprof
|
||||
Dumping heap to arthas-output/dump.hprof <span class="token punctuation">..</span>.
|
||||
Heap dump <span class="token function">file</span> created
|
||||
</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><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>The generated file is located in the arthas-output directory and can be downloaded through the browser at http://localhost:8563/arthas-output/</p></div><h3 id="dump-only-live-objects" tabindex="-1"><a class="header-anchor" href="#dump-only-live-objects" aria-hidden="true">#</a> Dump only live objects</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@58205<span class="token punctuation">]</span>$ heapdump <span class="token parameter variable">--live</span> /tmp/dump.hprof
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as t,c as d,a,b as p,e,d as i,r as c}from"./app.98a29f3d.js";const r={},o=a("h1",{id:"heapdump",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#heapdump","aria-hidden":"true"},"#"),e(" heapdump")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-heapdump",target:"_blank",rel:"noopener noreferrer"},l=a("code",null,"heapdump",-1),h=e("\u5728\u7EBF\u6559\u7A0B"),m=i(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>dump java heap, \u7C7B\u4F3C jmap \u547D\u4EE4\u7684 heap dump \u529F\u80FD\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><h3 id="dump-\u5230\u6307\u5B9A\u6587\u4EF6" tabindex="-1"><a class="header-anchor" href="#dump-\u5230\u6307\u5B9A\u6587\u4EF6" aria-hidden="true">#</a> dump \u5230\u6307\u5B9A\u6587\u4EF6</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@58205<span class="token punctuation">]</span>$ heapdump arthas-output/dump.hprof
|
||||
import{_ as s,o as t,c as d,a,b as p,e,d as i,r as c}from"./app.977e81c1.js";const r={},o=a("h1",{id:"heapdump",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#heapdump","aria-hidden":"true"},"#"),e(" heapdump")],-1),u={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=command-heapdump",target:"_blank",rel:"noopener noreferrer"},l=a("code",null,"heapdump",-1),h=e("\u5728\u7EBF\u6559\u7A0B"),m=i(`<div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>dump java heap, \u7C7B\u4F3C jmap \u547D\u4EE4\u7684 heap dump \u529F\u80FD\u3002</p></div><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><h3 id="dump-\u5230\u6307\u5B9A\u6587\u4EF6" tabindex="-1"><a class="header-anchor" href="#dump-\u5230\u6307\u5B9A\u6587\u4EF6" aria-hidden="true">#</a> dump \u5230\u6307\u5B9A\u6587\u4EF6</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@58205<span class="token punctuation">]</span>$ heapdump arthas-output/dump.hprof
|
||||
Dumping heap to arthas-output/dump.hprof <span class="token punctuation">..</span>.
|
||||
Heap dump <span class="token function">file</span> created
|
||||
</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><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u751F\u6210\u6587\u4EF6\u5728<code>arthas-output</code>\u76EE\u5F55\uFF0C\u53EF\u4EE5\u901A\u8FC7\u6D4F\u89C8\u5668\u4E0B\u8F7D\uFF1A http://localhost:8563/arthas-output/</p></div><h3 id="\u53EA-dump-live-\u5BF9\u8C61" tabindex="-1"><a class="header-anchor" href="#\u53EA-dump-live-\u5BF9\u8C61" aria-hidden="true">#</a> \u53EA dump live \u5BF9\u8C61</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@58205<span class="token punctuation">]</span>$ heapdump <span class="token parameter variable">--live</span> /tmp/dump.hprof
|
@ -1,4 +1,4 @@
|
||||
import{_ as e,o as i,c as n,d as s}from"./app.98a29f3d.js";const a={},l=s(`<h1 id="help" tabindex="-1"><a class="header-anchor" href="#help" aria-hidden="true">#</a> help</h1><p>\u67E5\u770B\u547D\u4EE4\u5E2E\u52A9\u4FE1\u606F\uFF0C\u53EF\u4EE5\u67E5\u770B\u5F53\u524D arthas \u7248\u672C\u652F\u6301\u7684\u6307\u4EE4\uFF0C\u6216\u8005\u67E5\u770B\u5177\u4F53\u6307\u4EE4\u7684\u4F7F\u7528\u8BF4\u660E\u3002</p><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>[help \u6307\u4EE4]\u7684\u7B49\u540C\u4E8E[\u6307\u4EE4 -help]\uFF0C\u90FD\u662F\u67E5\u770B\u5177\u4F53\u6307\u4EE4\u7684\u4F7F\u7528\u8BF4\u660E\u3002</p></div><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">\u4E0D\u63A5\u53C2\u6570</td><td style="text-align:left;">\u67E5\u8BE2\u5F53\u524D arthas \u7248\u672C\u652F\u6301\u7684\u6307\u4EE4\u4EE5\u53CA\u6307\u4EE4\u63CF\u8FF0</td></tr><tr><td style="text-align:right;">[name:]</td><td style="text-align:left;">\u67E5\u8BE2\u5177\u4F53\u6307\u4EE4\u7684\u4F7F\u7528\u8BF4\u660E</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ help
|
||||
import{_ as e,o as i,c as n,d as s}from"./app.977e81c1.js";const a={},l=s(`<h1 id="help" tabindex="-1"><a class="header-anchor" href="#help" aria-hidden="true">#</a> help</h1><p>\u67E5\u770B\u547D\u4EE4\u5E2E\u52A9\u4FE1\u606F\uFF0C\u53EF\u4EE5\u67E5\u770B\u5F53\u524D arthas \u7248\u672C\u652F\u6301\u7684\u6307\u4EE4\uFF0C\u6216\u8005\u67E5\u770B\u5177\u4F53\u6307\u4EE4\u7684\u4F7F\u7528\u8BF4\u660E\u3002</p><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>[help \u6307\u4EE4]\u7684\u7B49\u540C\u4E8E[\u6307\u4EE4 -help]\uFF0C\u90FD\u662F\u67E5\u770B\u5177\u4F53\u6307\u4EE4\u7684\u4F7F\u7528\u8BF4\u660E\u3002</p></div><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">\u4E0D\u63A5\u53C2\u6570</td><td style="text-align:left;">\u67E5\u8BE2\u5F53\u524D arthas \u7248\u672C\u652F\u6301\u7684\u6307\u4EE4\u4EE5\u53CA\u6307\u4EE4\u63CF\u8FF0</td></tr><tr><td style="text-align:right;">[name:]</td><td style="text-align:left;">\u67E5\u8BE2\u5177\u4F53\u6307\u4EE4\u7684\u4F7F\u7528\u8BF4\u660E</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ help
|
||||
NAME DESCRIPTION
|
||||
help Display Arthas Help
|
||||
auth Authenticates the current session
|
@ -1,4 +1,4 @@
|
||||
import{_ as n,o as s,c as e,d as a}from"./app.98a29f3d.js";const i={},t=a(`<h1 id="help" tabindex="-1"><a class="header-anchor" href="#help" aria-hidden="true">#</a> help</h1><p>show help message, the command can show all the commands that current Arthas server supports,or you can use the command to show the detail usage of another command.</p><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>[help command] equals [command -help],both is to show the detail usage of one command.</p></div><h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;"></td><td style="text-align:left;">show all the commands that current Arthas server supports</td></tr><tr><td style="text-align:right;">[name:]</td><td style="text-align:left;">show the detail usage of one command</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token builtin class-name">help</span>
|
||||
import{_ as n,o as s,c as e,d as a}from"./app.977e81c1.js";const i={},t=a(`<h1 id="help" tabindex="-1"><a class="header-anchor" href="#help" aria-hidden="true">#</a> help</h1><p>show help message, the command can show all the commands that current Arthas server supports,or you can use the command to show the detail usage of another command.</p><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>[help command] equals [command -help],both is to show the detail usage of one command.</p></div><h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;"></td><td style="text-align:left;">show all the commands that current Arthas server supports</td></tr><tr><td style="text-align:right;">[name:]</td><td style="text-align:left;">show the detail usage of one command</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code>$ <span class="token builtin class-name">help</span>
|
||||
NAME DESCRIPTION
|
||||
<span class="token builtin class-name">help</span> Display Arthas Help
|
||||
auth Authenticates the current session
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as e,c as n,d as a}from"./app.98a29f3d.js";const t={},i=a(`<h1 id="history" tabindex="-1"><a class="header-anchor" href="#history" aria-hidden="true">#</a> history</h1><p>view command history.</p><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>history of commands will persisted in a file named history, so the history command can show all the history commands of current Arthas server ,but not only history in current session.</p></div><h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;">[c:]</td><td style="text-align:left;">clear all the history commands</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">view the nearest 5 commands</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token comment">#view the nearest 3 commands</span>
|
||||
import{_ as s,o as e,c as n,d as a}from"./app.977e81c1.js";const t={},i=a(`<h1 id="history" tabindex="-1"><a class="header-anchor" href="#history" aria-hidden="true">#</a> history</h1><p>view command history.</p><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>history of commands will persisted in a file named history, so the history command can show all the history commands of current Arthas server ,but not only history in current session.</p></div><h2 id="options" tabindex="-1"><a class="header-anchor" href="#options" aria-hidden="true">#</a> Options</h2><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;">[c:]</td><td style="text-align:left;">clear all the history commands</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">view the nearest 5 commands</td></tr></tbody></table><h2 id="usage" tabindex="-1"><a class="header-anchor" href="#usage" aria-hidden="true">#</a> Usage</h2><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token comment">#view the nearest 3 commands</span>
|
||||
$ <span class="token function">history</span> <span class="token number">3</span>
|
||||
<span class="token number">269</span> thread
|
||||
<span class="token number">270</span> cls
|
@ -1,4 +1,4 @@
|
||||
import{_ as e,o as t,c as i,d as s}from"./app.98a29f3d.js";const a={},n=s(`<h1 id="history" tabindex="-1"><a class="header-anchor" href="#history" aria-hidden="true">#</a> history</h1><p>\u6253\u5370\u547D\u4EE4\u5386\u53F2\u3002</p><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u5386\u53F2\u6307\u4EE4\u4F1A\u901A\u8FC7\u4E00\u4E2A\u540D\u53EB history \u7684\u6587\u4EF6\u6301\u4E45\u5316\uFF0C\u6240\u4EE5 history \u6307\u4EE4\u53EF\u4EE5\u67E5\u770B\u5F53\u524D arthas \u670D\u52A1\u5668\u7684\u6240\u6709\u5386\u53F2\u547D\u4EE4\uFF0C\u800C\u4E0D\u4EC5\u53EA\u662F\u5F53\u524D\u6B21\u4F1A\u8BDD\u4F7F\u7528\u8FC7\u7684\u547D\u4EE4\u3002</p></div><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">[c:]</td><td style="text-align:left;">\u6E05\u7A7A\u5386\u53F2\u6307\u4EE4</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">\u663E\u793A\u6700\u8FD1\u6267\u884C\u7684 n \u6761\u6307\u4EE4</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>#\u67E5\u770B\u6700\u8FD1\u6267\u884C\u76843\u6761\u6307\u4EE4
|
||||
import{_ as e,o as t,c as i,d as s}from"./app.977e81c1.js";const a={},n=s(`<h1 id="history" tabindex="-1"><a class="header-anchor" href="#history" aria-hidden="true">#</a> history</h1><p>\u6253\u5370\u547D\u4EE4\u5386\u53F2\u3002</p><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u5386\u53F2\u6307\u4EE4\u4F1A\u901A\u8FC7\u4E00\u4E2A\u540D\u53EB history \u7684\u6587\u4EF6\u6301\u4E45\u5316\uFF0C\u6240\u4EE5 history \u6307\u4EE4\u53EF\u4EE5\u67E5\u770B\u5F53\u524D arthas \u670D\u52A1\u5668\u7684\u6240\u6709\u5386\u53F2\u547D\u4EE4\uFF0C\u800C\u4E0D\u4EC5\u53EA\u662F\u5F53\u524D\u6B21\u4F1A\u8BDD\u4F7F\u7528\u8FC7\u7684\u547D\u4EE4\u3002</p></div><h2 id="\u53C2\u6570\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u53C2\u6570\u8BF4\u660E" aria-hidden="true">#</a> \u53C2\u6570\u8BF4\u660E</h2><table><thead><tr><th style="text-align:right;">\u53C2\u6570\u540D\u79F0</th><th style="text-align:left;">\u53C2\u6570\u8BF4\u660E</th></tr></thead><tbody><tr><td style="text-align:right;">[c:]</td><td style="text-align:left;">\u6E05\u7A7A\u5386\u53F2\u6307\u4EE4</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">\u663E\u793A\u6700\u8FD1\u6267\u884C\u7684 n \u6761\u6307\u4EE4</td></tr></tbody></table><h2 id="\u4F7F\u7528\u53C2\u8003" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528\u53C2\u8003" aria-hidden="true">#</a> \u4F7F\u7528\u53C2\u8003</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>#\u67E5\u770B\u6700\u8FD1\u6267\u884C\u76843\u6761\u6307\u4EE4
|
||||
$ history 3
|
||||
269 thread
|
||||
270 cls
|
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-8b0312c0","path":"/en/doc/http-api.html","title":"Http API","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Overview","slug":"overview","link":"#overview","children":[{"level":3,"title":"Access address","slug":"access-address","link":"#access-address","children":[]},{"level":3,"title":"Request data format","slug":"request-data-format","link":"#request-data-format","children":[]},{"level":3,"title":"Request Actions","slug":"request-actions","link":"#request-actions","children":[]},{"level":3,"title":"Response status","slug":"response-status","link":"#response-status","children":[]}]},{"level":2,"title":"One-time command","slug":"one-time-command","link":"#one-time-command","children":[]},{"level":2,"title":"Session interaction","slug":"session-interaction","link":"#session-interaction","children":[{"level":3,"title":"Create session","slug":"create-session","link":"#create-session","children":[]},{"level":3,"title":"Join session","slug":"join-session","link":"#join-session","children":[]},{"level":3,"title":"Pull command results","slug":"pull-command-results","link":"#pull-command-results","children":[]},{"level":3,"title":"Execute commands asynchronously","slug":"execute-commands-asynchronously","link":"#execute-commands-asynchronously","children":[]},{"level":3,"title":"Interrupt command execution","slug":"interrupt-command-execution","link":"#interrupt-command-execution","children":[]},{"level":3,"title":"Close session","slug":"close-session","link":"#close-session","children":[]}]},{"level":2,"title":"Authentication","slug":"authentication","link":"#authentication","children":[]},{"level":2,"title":"Web UI","slug":"web-ui","link":"#web-ui","children":[]},{"level":2,"title":"Special command results","slug":"special-command-results","link":"#special-command-results","children":[{"level":3,"title":"status","slug":"status","link":"#status","children":[]},{"level":3,"title":"input_status","slug":"input-status","link":"#input-status","children":[]},{"level":3,"title":"command","slug":"command","link":"#command","children":[]},{"level":3,"title":"enhancer","slug":"enhancer","link":"#enhancer","children":[]}]},{"level":2,"title":"Cases","slug":"cases","link":"#cases","children":[{"level":3,"title":"Get classpath of Java application","slug":"get-classpath-of-java-application","link":"#get-classpath-of-java-application","children":[]},{"level":3,"title":"Make watch command output a map object","slug":"make-watch-command-output-a-map-object","link":"#make-watch-command-output-a-map-object","children":[]}]}],"git":{"updatedTime":1660041759000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/http-api.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-8b0312c0","path":"/en/doc/http-api.html","title":"Http API","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Overview","slug":"overview","link":"#overview","children":[{"level":3,"title":"Access address","slug":"access-address","link":"#access-address","children":[]},{"level":3,"title":"Request data format","slug":"request-data-format","link":"#request-data-format","children":[]},{"level":3,"title":"Request Actions","slug":"request-actions","link":"#request-actions","children":[]},{"level":3,"title":"Response status","slug":"response-status","link":"#response-status","children":[]}]},{"level":2,"title":"One-time command","slug":"one-time-command","link":"#one-time-command","children":[]},{"level":2,"title":"Session interaction","slug":"session-interaction","link":"#session-interaction","children":[{"level":3,"title":"Create session","slug":"create-session","link":"#create-session","children":[]},{"level":3,"title":"Join session","slug":"join-session","link":"#join-session","children":[]},{"level":3,"title":"Pull command results","slug":"pull-command-results","link":"#pull-command-results","children":[]},{"level":3,"title":"Execute commands asynchronously","slug":"execute-commands-asynchronously","link":"#execute-commands-asynchronously","children":[]},{"level":3,"title":"Interrupt command execution","slug":"interrupt-command-execution","link":"#interrupt-command-execution","children":[]},{"level":3,"title":"Close session","slug":"close-session","link":"#close-session","children":[]}]},{"level":2,"title":"Authentication","slug":"authentication","link":"#authentication","children":[]},{"level":2,"title":"Web UI","slug":"web-ui","link":"#web-ui","children":[]},{"level":2,"title":"Special command results","slug":"special-command-results","link":"#special-command-results","children":[{"level":3,"title":"status","slug":"status","link":"#status","children":[]},{"level":3,"title":"input_status","slug":"input-status","link":"#input-status","children":[]},{"level":3,"title":"command","slug":"command","link":"#command","children":[]},{"level":3,"title":"enhancer","slug":"enhancer","link":"#enhancer","children":[]}]},{"level":2,"title":"Cases","slug":"cases","link":"#cases","children":[{"level":3,"title":"Get classpath of Java application","slug":"get-classpath-of-java-application","link":"#get-classpath-of-java-application","children":[]},{"level":3,"title":"Make watch command output a map object","slug":"make-watch-command-output-a-map-object","link":"#make-watch-command-output-a-map-object","children":[]}]}],"git":{"updatedTime":1698396365000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"haoyixing","email":"haoyixing@kuaishou.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/http-api.md","version":"3.7.2"}');export{e as data};
|
@ -1 +1 @@
|
||||
const l=JSON.parse('{"key":"v-225de034","path":"/doc/http-api.html","title":"Http API","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u6982\u89C8","slug":"\u6982\u89C8","link":"#\u6982\u89C8","children":[{"level":3,"title":"\u8BBF\u95EE\u5730\u5740","slug":"\u8BBF\u95EE\u5730\u5740","link":"#\u8BBF\u95EE\u5730\u5740","children":[]},{"level":3,"title":"\u8BF7\u6C42\u6570\u636E\u683C\u5F0F","slug":"\u8BF7\u6C42\u6570\u636E\u683C\u5F0F","link":"#\u8BF7\u6C42\u6570\u636E\u683C\u5F0F","children":[]},{"level":3,"title":"\u8BF7\u6C42 Action","slug":"\u8BF7\u6C42-action","link":"#\u8BF7\u6C42-action","children":[]},{"level":3,"title":"\u54CD\u5E94\u72B6\u6001","slug":"\u54CD\u5E94\u72B6\u6001","link":"#\u54CD\u5E94\u72B6\u6001","children":[]}]},{"level":2,"title":"\u4E00\u6B21\u6027\u547D\u4EE4","slug":"\u4E00\u6B21\u6027\u547D\u4EE4","link":"#\u4E00\u6B21\u6027\u547D\u4EE4","children":[]},{"level":2,"title":"\u4F1A\u8BDD\u4EA4\u4E92","slug":"\u4F1A\u8BDD\u4EA4\u4E92","link":"#\u4F1A\u8BDD\u4EA4\u4E92","children":[{"level":3,"title":"\u521B\u5EFA\u4F1A\u8BDD","slug":"\u521B\u5EFA\u4F1A\u8BDD","link":"#\u521B\u5EFA\u4F1A\u8BDD","children":[]},{"level":3,"title":"\u52A0\u5165\u4F1A\u8BDD","slug":"\u52A0\u5165\u4F1A\u8BDD","link":"#\u52A0\u5165\u4F1A\u8BDD","children":[]},{"level":3,"title":"\u62C9\u53D6\u547D\u4EE4\u7ED3\u679C","slug":"\u62C9\u53D6\u547D\u4EE4\u7ED3\u679C","link":"#\u62C9\u53D6\u547D\u4EE4\u7ED3\u679C","children":[]},{"level":3,"title":"\u5F02\u6B65\u6267\u884C\u547D\u4EE4","slug":"\u5F02\u6B65\u6267\u884C\u547D\u4EE4","link":"#\u5F02\u6B65\u6267\u884C\u547D\u4EE4","children":[]},{"level":3,"title":"\u4E2D\u65AD\u547D\u4EE4\u6267\u884C","slug":"\u4E2D\u65AD\u547D\u4EE4\u6267\u884C","link":"#\u4E2D\u65AD\u547D\u4EE4\u6267\u884C","children":[]},{"level":3,"title":"\u5173\u95ED\u4F1A\u8BDD","slug":"\u5173\u95ED\u4F1A\u8BDD","link":"#\u5173\u95ED\u4F1A\u8BDD","children":[]}]},{"level":2,"title":"\u9274\u6743","slug":"\u9274\u6743","link":"#\u9274\u6743","children":[]},{"level":2,"title":"Web UI","slug":"web-ui","link":"#web-ui","children":[]},{"level":2,"title":"\u7279\u6B8A\u547D\u4EE4\u7ED3\u679C","slug":"\u7279\u6B8A\u547D\u4EE4\u7ED3\u679C","link":"#\u7279\u6B8A\u547D\u4EE4\u7ED3\u679C","children":[{"level":3,"title":"status","slug":"status","link":"#status","children":[]},{"level":3,"title":"input_status","slug":"input-status","link":"#input-status","children":[]},{"level":3,"title":"command","slug":"command","link":"#command","children":[]},{"level":3,"title":"enhancer","slug":"enhancer","link":"#enhancer","children":[]}]},{"level":2,"title":"\u6848\u4F8B","slug":"\u6848\u4F8B","link":"#\u6848\u4F8B","children":[{"level":3,"title":"\u83B7\u53D6 Java \u5E94\u7528\u7684 Classpath","slug":"\u83B7\u53D6-java-\u5E94\u7528\u7684-classpath","link":"#\u83B7\u53D6-java-\u5E94\u7528\u7684-classpath","children":[]},{"level":3,"title":"watch \u547D\u4EE4\u8F93\u51FA map \u5BF9\u8C61","slug":"watch-\u547D\u4EE4\u8F93\u51FA-map-\u5BF9\u8C61","link":"#watch-\u547D\u4EE4\u8F93\u51FA-map-\u5BF9\u8C61","children":[]}]}],"git":{"updatedTime":1660041759000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/http-api.md","version":"3.7.2"}');export{l as data};
|
||||
const l=JSON.parse('{"key":"v-225de034","path":"/doc/http-api.html","title":"Http API","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u6982\u89C8","slug":"\u6982\u89C8","link":"#\u6982\u89C8","children":[{"level":3,"title":"\u8BBF\u95EE\u5730\u5740","slug":"\u8BBF\u95EE\u5730\u5740","link":"#\u8BBF\u95EE\u5730\u5740","children":[]},{"level":3,"title":"\u8BF7\u6C42\u6570\u636E\u683C\u5F0F","slug":"\u8BF7\u6C42\u6570\u636E\u683C\u5F0F","link":"#\u8BF7\u6C42\u6570\u636E\u683C\u5F0F","children":[]},{"level":3,"title":"\u8BF7\u6C42 Action","slug":"\u8BF7\u6C42-action","link":"#\u8BF7\u6C42-action","children":[]},{"level":3,"title":"\u54CD\u5E94\u72B6\u6001","slug":"\u54CD\u5E94\u72B6\u6001","link":"#\u54CD\u5E94\u72B6\u6001","children":[]}]},{"level":2,"title":"\u4E00\u6B21\u6027\u547D\u4EE4","slug":"\u4E00\u6B21\u6027\u547D\u4EE4","link":"#\u4E00\u6B21\u6027\u547D\u4EE4","children":[]},{"level":2,"title":"\u4F1A\u8BDD\u4EA4\u4E92","slug":"\u4F1A\u8BDD\u4EA4\u4E92","link":"#\u4F1A\u8BDD\u4EA4\u4E92","children":[{"level":3,"title":"\u521B\u5EFA\u4F1A\u8BDD","slug":"\u521B\u5EFA\u4F1A\u8BDD","link":"#\u521B\u5EFA\u4F1A\u8BDD","children":[]},{"level":3,"title":"\u52A0\u5165\u4F1A\u8BDD","slug":"\u52A0\u5165\u4F1A\u8BDD","link":"#\u52A0\u5165\u4F1A\u8BDD","children":[]},{"level":3,"title":"\u62C9\u53D6\u547D\u4EE4\u7ED3\u679C","slug":"\u62C9\u53D6\u547D\u4EE4\u7ED3\u679C","link":"#\u62C9\u53D6\u547D\u4EE4\u7ED3\u679C","children":[]},{"level":3,"title":"\u5F02\u6B65\u6267\u884C\u547D\u4EE4","slug":"\u5F02\u6B65\u6267\u884C\u547D\u4EE4","link":"#\u5F02\u6B65\u6267\u884C\u547D\u4EE4","children":[]},{"level":3,"title":"\u4E2D\u65AD\u547D\u4EE4\u6267\u884C","slug":"\u4E2D\u65AD\u547D\u4EE4\u6267\u884C","link":"#\u4E2D\u65AD\u547D\u4EE4\u6267\u884C","children":[]},{"level":3,"title":"\u5173\u95ED\u4F1A\u8BDD","slug":"\u5173\u95ED\u4F1A\u8BDD","link":"#\u5173\u95ED\u4F1A\u8BDD","children":[]}]},{"level":2,"title":"\u9274\u6743","slug":"\u9274\u6743","link":"#\u9274\u6743","children":[]},{"level":2,"title":"Web UI","slug":"web-ui","link":"#web-ui","children":[]},{"level":2,"title":"\u7279\u6B8A\u547D\u4EE4\u7ED3\u679C","slug":"\u7279\u6B8A\u547D\u4EE4\u7ED3\u679C","link":"#\u7279\u6B8A\u547D\u4EE4\u7ED3\u679C","children":[{"level":3,"title":"status","slug":"status","link":"#status","children":[]},{"level":3,"title":"input_status","slug":"input-status","link":"#input-status","children":[]},{"level":3,"title":"command","slug":"command","link":"#command","children":[]},{"level":3,"title":"enhancer","slug":"enhancer","link":"#enhancer","children":[]}]},{"level":2,"title":"\u6848\u4F8B","slug":"\u6848\u4F8B","link":"#\u6848\u4F8B","children":[{"level":3,"title":"\u83B7\u53D6 Java \u5E94\u7528\u7684 Classpath","slug":"\u83B7\u53D6-java-\u5E94\u7528\u7684-classpath","link":"#\u83B7\u53D6-java-\u5E94\u7528\u7684-classpath","children":[]},{"level":3,"title":"watch \u547D\u4EE4\u8F93\u51FA map \u5BF9\u8C61","slug":"watch-\u547D\u4EE4\u8F93\u51FA-map-\u5BF9\u8C61","link":"#watch-\u547D\u4EE4\u8F93\u51FA-map-\u5BF9\u8C61","children":[]}]}],"git":{"updatedTime":1698396365000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"haoyixing","email":"haoyixing@kuaishou.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/http-api.md","version":"3.7.2"}');export{l as data};
|
@ -1 +1 @@
|
||||
import{_ as i,o as r,c as s,a as t,b as o,d as n,e,r as l}from"./app.98a29f3d.js";const c="/images/alibabacloud_hotreload.png",d={},h=n('<h1 id="idea-plugin" tabindex="-1"><a class="header-anchor" href="#idea-plugin" aria-hidden="true">#</a> IDEA Plugin</h1><h2 id="arthas-idea-\u90E8\u5206\u547D\u4EE4\u53EF\u89C6\u5316" tabindex="-1"><a class="header-anchor" href="#arthas-idea-\u90E8\u5206\u547D\u4EE4\u53EF\u89C6\u5316" aria-hidden="true">#</a> Arthas-idea\uFF08\u90E8\u5206\u547D\u4EE4\u53EF\u89C6\u5316\uFF09</h2><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u63D2\u4EF6\u7531\u793E\u533A\u5F00\u53D1\u8005\u63D0\u4F9B\u3002</p></div>',3),_=e("Jetbrains \u63D2\u4EF6\u83B7\u53D6\u5730\u5740\uFF1A "),u={href:"https://plugins.jetbrains.com/plugin/13581-arthas-idea",target:"_blank",rel:"noopener noreferrer"},p=e("https://plugins.jetbrains.com/plugin/13581-arthas-idea"),m=e("\u4F7F\u7528\u6587\u6863\uFF1A"),b={href:"https://www.yuque.com/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},g=e("https://www.yuque.com/arthas-idea-plugin"),f=e("\u6E90\u7801\u5730\u5740\uFF1A "),k={href:"https://github.com/WangJi92/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},x=e("https://github.com/WangJi92/arthas-idea-plugin"),v=n('<h2 id="alibaba-cloud-toolkit-\u70ED\u90E8\u7F72\u7EC4\u4EF6-\u4E00\u952E-retransform" tabindex="-1"><a class="header-anchor" href="#alibaba-cloud-toolkit-\u70ED\u90E8\u7F72\u7EC4\u4EF6-\u4E00\u952E-retransform" aria-hidden="true">#</a> Alibaba Cloud Toolkit \u70ED\u90E8\u7F72\u7EC4\u4EF6\uFF08\u4E00\u952E retransform\uFF09</h2><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u70ED\u90E8\u7F72\u7EC4\u4EF6\u652F\u6301\u4E00\u952E\u5C06\u7F16\u8F91\u5668\u4E2D\u4FEE\u6539\u7684 Java \u6E90\u7801\u5FEB\u901F\u7F16\u8BD1\uFF0C\u5E76\u66F4\u65B0\u5230\u8FDC\u7AEF\u5E94\u7528\u670D\u52A1\u4E2D\uFF0C\u514D\u53BB\u624B\u52A8 dump\u3001mc \u7684\u8FC7\u7A0B\u3002\u6B64\u5916\uFF0C\u4E5F\u53EF\u4EE5\u4E00\u952E\u8FD8\u539F retransform \u7684\u7C7B\u6587\u4EF6\u3002</p></div><p><img src="'+c+'" alt=""></p>',3),w=e("Jetbrains \u63D2\u4EF6\u83B7\u53D6\u5730\u5740\uFF1A "),J={href:"https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit",target:"_blank",rel:"noopener noreferrer"},j=e("https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit"),y=e("\u4F7F\u7528\u6587\u6863\uFF1A"),A={href:"https://help.aliyun.com/document_detail/381077.html",target:"_blank",rel:"noopener noreferrer"},E=e("https://help.aliyun.com/document_detail/381077.html"),N=t("li",null,[e("\u8054\u7CFB\u6211\u4EEC\uFF1A\u8BF7\u52A0 Alibaba Cloud Toolkit (\u5E94\u7528\u89C2\u6D4B\u5668) \u9489\u9489\u7528\u6237\u4EA4\u6D41\u7FA4\uFF08\u7FA4\u53F7\uFF1A"),t("strong",null,"34965379"),e("\uFF09")],-1);function V(B,C){const a=l("ExternalLinkIcon");return r(),s("div",null,[h,t("ul",null,[t("li",null,[_,t("a",u,[p,o(a)])]),t("li",null,[m,t("a",b,[g,o(a)])]),t("li",null,[f,t("a",k,[x,o(a)])])]),v,t("ul",null,[t("li",null,[w,t("a",J,[j,o(a)])]),t("li",null,[y,t("a",A,[E,o(a)])]),N])])}const T=i(d,[["render",V],["__file","idea-plugin.html.vue"]]);export{T as default};
|
||||
import{_ as i,o as r,c as s,a as t,b as o,d as n,e,r as l}from"./app.977e81c1.js";const c="/images/alibabacloud_hotreload.png",d={},h=n('<h1 id="idea-plugin" tabindex="-1"><a class="header-anchor" href="#idea-plugin" aria-hidden="true">#</a> IDEA Plugin</h1><h2 id="arthas-idea-\u90E8\u5206\u547D\u4EE4\u53EF\u89C6\u5316" tabindex="-1"><a class="header-anchor" href="#arthas-idea-\u90E8\u5206\u547D\u4EE4\u53EF\u89C6\u5316" aria-hidden="true">#</a> Arthas-idea\uFF08\u90E8\u5206\u547D\u4EE4\u53EF\u89C6\u5316\uFF09</h2><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u63D2\u4EF6\u7531\u793E\u533A\u5F00\u53D1\u8005\u63D0\u4F9B\u3002</p></div>',3),_=e("Jetbrains \u63D2\u4EF6\u83B7\u53D6\u5730\u5740\uFF1A "),u={href:"https://plugins.jetbrains.com/plugin/13581-arthas-idea",target:"_blank",rel:"noopener noreferrer"},p=e("https://plugins.jetbrains.com/plugin/13581-arthas-idea"),m=e("\u4F7F\u7528\u6587\u6863\uFF1A"),b={href:"https://www.yuque.com/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},g=e("https://www.yuque.com/arthas-idea-plugin"),f=e("\u6E90\u7801\u5730\u5740\uFF1A "),k={href:"https://github.com/WangJi92/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},x=e("https://github.com/WangJi92/arthas-idea-plugin"),v=n('<h2 id="alibaba-cloud-toolkit-\u70ED\u90E8\u7F72\u7EC4\u4EF6-\u4E00\u952E-retransform" tabindex="-1"><a class="header-anchor" href="#alibaba-cloud-toolkit-\u70ED\u90E8\u7F72\u7EC4\u4EF6-\u4E00\u952E-retransform" aria-hidden="true">#</a> Alibaba Cloud Toolkit \u70ED\u90E8\u7F72\u7EC4\u4EF6\uFF08\u4E00\u952E retransform\uFF09</h2><div class="custom-container tip"><p class="custom-container-title">\u63D0\u793A</p><p>\u70ED\u90E8\u7F72\u7EC4\u4EF6\u652F\u6301\u4E00\u952E\u5C06\u7F16\u8F91\u5668\u4E2D\u4FEE\u6539\u7684 Java \u6E90\u7801\u5FEB\u901F\u7F16\u8BD1\uFF0C\u5E76\u66F4\u65B0\u5230\u8FDC\u7AEF\u5E94\u7528\u670D\u52A1\u4E2D\uFF0C\u514D\u53BB\u624B\u52A8 dump\u3001mc \u7684\u8FC7\u7A0B\u3002\u6B64\u5916\uFF0C\u4E5F\u53EF\u4EE5\u4E00\u952E\u8FD8\u539F retransform \u7684\u7C7B\u6587\u4EF6\u3002</p></div><p><img src="'+c+'" alt=""></p>',3),w=e("Jetbrains \u63D2\u4EF6\u83B7\u53D6\u5730\u5740\uFF1A "),J={href:"https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit",target:"_blank",rel:"noopener noreferrer"},j=e("https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit"),y=e("\u4F7F\u7528\u6587\u6863\uFF1A"),A={href:"https://help.aliyun.com/document_detail/381077.html",target:"_blank",rel:"noopener noreferrer"},E=e("https://help.aliyun.com/document_detail/381077.html"),N=t("li",null,[e("\u8054\u7CFB\u6211\u4EEC\uFF1A\u8BF7\u52A0 Alibaba Cloud Toolkit (\u5E94\u7528\u89C2\u6D4B\u5668) \u9489\u9489\u7528\u6237\u4EA4\u6D41\u7FA4\uFF08\u7FA4\u53F7\uFF1A"),t("strong",null,"34965379"),e("\uFF09")],-1);function V(B,C){const a=l("ExternalLinkIcon");return r(),s("div",null,[h,t("ul",null,[t("li",null,[_,t("a",u,[p,o(a)])]),t("li",null,[m,t("a",b,[g,o(a)])]),t("li",null,[f,t("a",k,[x,o(a)])])]),v,t("ul",null,[t("li",null,[w,t("a",J,[j,o(a)])]),t("li",null,[y,t("a",A,[E,o(a)])]),N])])}const T=i(d,[["render",V],["__file","idea-plugin.html.vue"]]);export{T as default};
|
@ -1 +1 @@
|
||||
import{_ as o,o as a,c as s,a as e,b as i,e as t,r}from"./app.98a29f3d.js";const l={},c=e("h1",{id:"idea-plugin",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#idea-plugin","aria-hidden":"true"},"#"),t(" IDEA Plugin")],-1),u=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,"Plugin is provided by community developers.")],-1),_=t("Jetbrains Plugin\uFF1A "),d={href:"https://plugins.jetbrains.com/plugin/13581-arthas-idea",target:"_blank",rel:"noopener noreferrer"},h=t("https://plugins.jetbrains.com/plugin/13581-arthas-idea"),p=t("Plugin Doc\uFF1A"),g={href:"https://www.yuque.com/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},m=t("https://www.yuque.com/arthas-idea-plugin"),f=t("Plugin Github\uFF1A "),b={href:"https://github.com/WangJi92/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},k=t("https://github.com/WangJi92/arthas-idea-plugin");function x(P,v){const n=r("ExternalLinkIcon");return a(),s("div",null,[c,u,e("ul",null,[e("li",null,[_,e("a",d,[h,i(n)])]),e("li",null,[p,e("a",g,[m,i(n)])]),e("li",null,[f,e("a",b,[k,i(n)])])])])}const y=o(l,[["render",x],["__file","idea-plugin.html.vue"]]);export{y as default};
|
||||
import{_ as o,o as a,c as s,a as e,b as i,e as t,r}from"./app.977e81c1.js";const l={},c=e("h1",{id:"idea-plugin",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#idea-plugin","aria-hidden":"true"},"#"),t(" IDEA Plugin")],-1),u=e("div",{class:"custom-container tip"},[e("p",{class:"custom-container-title"},"TIP"),e("p",null,"Plugin is provided by community developers.")],-1),_=t("Jetbrains Plugin\uFF1A "),d={href:"https://plugins.jetbrains.com/plugin/13581-arthas-idea",target:"_blank",rel:"noopener noreferrer"},h=t("https://plugins.jetbrains.com/plugin/13581-arthas-idea"),p=t("Plugin Doc\uFF1A"),g={href:"https://www.yuque.com/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},m=t("https://www.yuque.com/arthas-idea-plugin"),f=t("Plugin Github\uFF1A "),b={href:"https://github.com/WangJi92/arthas-idea-plugin",target:"_blank",rel:"noopener noreferrer"},k=t("https://github.com/WangJi92/arthas-idea-plugin");function x(P,v){const n=r("ExternalLinkIcon");return a(),s("div",null,[c,u,e("ul",null,[e("li",null,[_,e("a",d,[h,i(n)])]),e("li",null,[p,e("a",g,[m,i(n)])]),e("li",null,[f,e("a",b,[k,i(n)])])])])}const y=o(l,[["render",x],["__file","idea-plugin.html.vue"]]);export{y as default};
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as e,o as c,c as t}from"./app.98a29f3d.js";const n={};function _(o,r){return c(),t("div")}const a=e(n,[["render",_],["__file","index.html.vue"]]);export{a as default};
|
||||
import{_ as e,o as c,c as t}from"./app.977e81c1.js";const n={};function _(o,r){return c(),t("div")}const a=e(n,[["render",_],["__file","index.html.vue"]]);export{a as default};
|
@ -1 +1 @@
|
||||
import{_ as i}from"./arthas.b23d3e5a.js";import{_ as a,o as r,c as n,a as e,b as s,d as l,e as t,r as c}from"./app.98a29f3d.js";const d={},h=l('<h1 id="introduction" tabindex="-1"><a class="header-anchor" href="#introduction" aria-hidden="true">#</a> Introduction</h1><p><img src="'+i+'" alt=""></p><p>Arthas is a Java diagnostic tool open-sourced by Alibaba middleware team. It is widely adopted and popular among the developers inside Alibaba. Arthas helps developers in trouble-shooting issues in production environment for Java based applications without modifying code or restarting servers.</p><h2 id="background" tabindex="-1"><a class="header-anchor" href="#background" aria-hidden="true">#</a> Background</h2><p>Oftentimes the production system network is inaccessible from local development environment. If issues are encountered in production systems, it is impossible to use IDE to debug the application remotely. What's even worse, debugging in production environment is unacceptable, as it will suspend all the threads, leading to services downtime.</p><p>Developers could always try to reproduce the same issue on the test/staging environment. However, this is tricky as some issues cannot be reproduced easily in a different environment, or even disappear once restarted.</p><p>And if you're thinking of adding some logs to your code to help trouble-shoot the issue, you will have to go through the following lifecycle: test, staging, and then to production. Time is money! This approach is inefficient! Worse still, the issue may not be fixed since it might be irreproducible once the JVM is restarted, as described above.</p><p>Arthas is built to solve these issues. A developer can troubleshoot production issues on the fly. No JVM restart, no additional code changes. Arthas works as an observer, that is, it will never suspend your running threads.</p><h2 id="key-features" tabindex="-1"><a class="header-anchor" href="#key-features" aria-hidden="true">#</a> Key features</h2><ul><li>Check whether a class is loaded? Or where the class is loaded from? (Useful for trouble-shooting jar file conflicts)</li><li>Decompile a class to ensure the code is running as expected.</li><li>Check classloader statistics, e.g. the number of classloaders, the number of classes loaded per classloader, the classloader hierarchy, possible classloader leaks, etc.</li><li>Check the method invocation details, e.g. method parameter, returned values, exceptions and etc.</li><li>Check the stack trace of specified method invocation. This is useful when a developer wants to know the caller of the method.</li><li>Trace the method invocation to find slow sub-invocations.</li><li>Monitor method invocation statistics, e.g. QPS (Query Per Second), RT (Return Time), success rate and etc.</li><li>Monitor system metrics, thread states and CPU usage, GC statistics and etc.</li><li>Supports command line interactive mode, with auto-complete feature enabled.</li><li>Supports telnet and WebSocket, which enables both local and remote diagnostics with command line and browsers.</li><li>Supports profiler/Flame Graph</li><li>Support get objects in the heap that are instances of the specified class.</li><li>Supports JDK 6+</li><li>Supports Linux/Mac/Windows</li></ul>',10),u=t("If you are using Arthas, please let us know. Your feedback is very important to us: "),p={href:"https://github.com/alibaba/arthas/issues/111",target:"_blank",rel:"noopener noreferrer"},m=t("View"),b=e("h2",{id:"contributors",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#contributors","aria-hidden":"true"},"#"),t(" Contributors")],-1),f={href:"https://github.com/alibaba/arthas/graphs/contributors",target:"_blank",rel:"noopener noreferrer"},g=e("img",{src:"https://opencollective.com/arthas/contributors.svg?width=890&button=false",alt:""},null,-1);function v(_,w){const o=c("ExternalLinkIcon");return r(),n("div",null,[h,e("p",null,[e("strong",null,[u,e("a",p,[m,s(o)])])]),b,e("p",null,[e("a",f,[g,s(o)])])])}const x=a(d,[["render",v],["__file","index.html.vue"]]);export{x as default};
|
||||
import{_ as i}from"./arthas.b23d3e5a.js";import{_ as a,o as r,c as n,a as e,b as s,d as l,e as t,r as c}from"./app.977e81c1.js";const d={},h=l('<h1 id="introduction" tabindex="-1"><a class="header-anchor" href="#introduction" aria-hidden="true">#</a> Introduction</h1><p><img src="'+i+'" alt=""></p><p>Arthas is a Java diagnostic tool open-sourced by Alibaba middleware team. It is widely adopted and popular among the developers inside Alibaba. Arthas helps developers in trouble-shooting issues in production environment for Java based applications without modifying code or restarting servers.</p><h2 id="background" tabindex="-1"><a class="header-anchor" href="#background" aria-hidden="true">#</a> Background</h2><p>Oftentimes the production system network is inaccessible from local development environment. If issues are encountered in production systems, it is impossible to use IDE to debug the application remotely. What's even worse, debugging in production environment is unacceptable, as it will suspend all the threads, leading to services downtime.</p><p>Developers could always try to reproduce the same issue on the test/staging environment. However, this is tricky as some issues cannot be reproduced easily in a different environment, or even disappear once restarted.</p><p>And if you're thinking of adding some logs to your code to help trouble-shoot the issue, you will have to go through the following lifecycle: test, staging, and then to production. Time is money! This approach is inefficient! Worse still, the issue may not be fixed since it might be irreproducible once the JVM is restarted, as described above.</p><p>Arthas is built to solve these issues. A developer can troubleshoot production issues on the fly. No JVM restart, no additional code changes. Arthas works as an observer, that is, it will never suspend your running threads.</p><h2 id="key-features" tabindex="-1"><a class="header-anchor" href="#key-features" aria-hidden="true">#</a> Key features</h2><ul><li>Check whether a class is loaded? Or where the class is loaded from? (Useful for trouble-shooting jar file conflicts)</li><li>Decompile a class to ensure the code is running as expected.</li><li>Check classloader statistics, e.g. the number of classloaders, the number of classes loaded per classloader, the classloader hierarchy, possible classloader leaks, etc.</li><li>Check the method invocation details, e.g. method parameter, returned values, exceptions and etc.</li><li>Check the stack trace of specified method invocation. This is useful when a developer wants to know the caller of the method.</li><li>Trace the method invocation to find slow sub-invocations.</li><li>Monitor method invocation statistics, e.g. QPS (Query Per Second), RT (Return Time), success rate and etc.</li><li>Monitor system metrics, thread states and CPU usage, GC statistics and etc.</li><li>Supports command line interactive mode, with auto-complete feature enabled.</li><li>Supports telnet and WebSocket, which enables both local and remote diagnostics with command line and browsers.</li><li>Supports profiler/Flame Graph</li><li>Support get objects in the heap that are instances of the specified class.</li><li>Supports JDK 6+</li><li>Supports Linux/Mac/Windows</li></ul>',10),u=t("If you are using Arthas, please let us know. Your feedback is very important to us: "),p={href:"https://github.com/alibaba/arthas/issues/111",target:"_blank",rel:"noopener noreferrer"},m=t("View"),b=e("h2",{id:"contributors",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#contributors","aria-hidden":"true"},"#"),t(" Contributors")],-1),f={href:"https://github.com/alibaba/arthas/graphs/contributors",target:"_blank",rel:"noopener noreferrer"},g=e("img",{src:"https://opencollective.com/arthas/contributors.svg?width=890&button=false",alt:""},null,-1);function v(_,w){const o=c("ExternalLinkIcon");return r(),n("div",null,[h,e("p",null,[e("strong",null,[u,e("a",p,[m,s(o)])])]),b,e("p",null,[e("a",f,[g,s(o)])])])}const x=a(d,[["render",v],["__file","index.html.vue"]]);export{x as default};
|
@ -1 +1 @@
|
||||
import{_ as e,o as c,c as t}from"./app.98a29f3d.js";const n={};function _(o,r){return c(),t("div")}const a=e(n,[["render",_],["__file","index.html.vue"]]);export{a as default};
|
||||
import{_ as e,o as c,c as t}from"./app.977e81c1.js";const n={};function _(o,r){return c(),t("div")}const a=e(n,[["render",_],["__file","index.html.vue"]]);export{a as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as o,o as l,c as d,a,b as s,w as c,d as e,e as n,r as i}from"./app.98a29f3d.js";const h={},u=e(`<h1 id="install-arthas" tabindex="-1"><a class="header-anchor" href="#install-arthas" aria-hidden="true">#</a> Install Arthas</h1><h2 id="quick-installation" tabindex="-1"><a class="header-anchor" href="#quick-installation" aria-hidden="true">#</a> Quick installation</h2><h3 id="use-arthas-boot-recommended" tabindex="-1"><a class="header-anchor" href="#use-arthas-boot-recommended" aria-hidden="true">#</a> Use <code>arthas-boot</code>(Recommended)</h3><p>Download<code>arthas-boot.jar</code>\uFF0CStart with <code>java</code> command:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">curl</span> <span class="token parameter variable">-O</span> https://arthas.aliyun.com/arthas-boot.jar
|
||||
import{_ as o,o as l,c as d,a,b as s,w as c,d as e,e as n,r as i}from"./app.977e81c1.js";const h={},u=e(`<h1 id="install-arthas" tabindex="-1"><a class="header-anchor" href="#install-arthas" aria-hidden="true">#</a> Install Arthas</h1><h2 id="quick-installation" tabindex="-1"><a class="header-anchor" href="#quick-installation" aria-hidden="true">#</a> Quick installation</h2><h3 id="use-arthas-boot-recommended" tabindex="-1"><a class="header-anchor" href="#use-arthas-boot-recommended" aria-hidden="true">#</a> Use <code>arthas-boot</code>(Recommended)</h3><p>Download<code>arthas-boot.jar</code>\uFF0CStart with <code>java</code> command:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">curl</span> <span class="token parameter variable">-O</span> https://arthas.aliyun.com/arthas-boot.jar
|
||||
<span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div></div></div><p>Print usage:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar <span class="token parameter variable">-h</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="use-as-sh" tabindex="-1"><a class="header-anchor" href="#use-as-sh" aria-hidden="true">#</a> Use <code>as.sh</code></h3><p>You can install Arthas with one single line command on Linux, Unix, and Mac. Pls. copy the following command and paste it into the command line, then press <em>Enter</em> to run:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">curl</span> <span class="token parameter variable">-L</span> https://arthas.aliyun.com/install.sh <span class="token operator">|</span> <span class="token function">sh</span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as d,o as l,c as o,a,b as s,w as c,d as n,e,r as i}from"./app.98a29f3d.js";const h={},p=n(`<h1 id="arthas-install" tabindex="-1"><a class="header-anchor" href="#arthas-install" aria-hidden="true">#</a> Arthas Install</h1><h2 id="\u5FEB\u901F\u5B89\u88C5" tabindex="-1"><a class="header-anchor" href="#\u5FEB\u901F\u5B89\u88C5" aria-hidden="true">#</a> \u5FEB\u901F\u5B89\u88C5</h2><h3 id="\u4F7F\u7528arthas-boot-\u63A8\u8350" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528arthas-boot-\u63A8\u8350" aria-hidden="true">#</a> \u4F7F\u7528<code>arthas-boot</code>\uFF08\u63A8\u8350\uFF09</h3><p>\u4E0B\u8F7D<code>arthas-boot.jar</code>\uFF0C\u7136\u540E\u7528<code>java -jar</code>\u7684\u65B9\u5F0F\u542F\u52A8\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">curl</span> <span class="token parameter variable">-O</span> https://arthas.aliyun.com/arthas-boot.jar
|
||||
import{_ as d,o as l,c as o,a,b as s,w as c,d as n,e,r as i}from"./app.977e81c1.js";const h={},p=n(`<h1 id="arthas-install" tabindex="-1"><a class="header-anchor" href="#arthas-install" aria-hidden="true">#</a> Arthas Install</h1><h2 id="\u5FEB\u901F\u5B89\u88C5" tabindex="-1"><a class="header-anchor" href="#\u5FEB\u901F\u5B89\u88C5" aria-hidden="true">#</a> \u5FEB\u901F\u5B89\u88C5</h2><h3 id="\u4F7F\u7528arthas-boot-\u63A8\u8350" tabindex="-1"><a class="header-anchor" href="#\u4F7F\u7528arthas-boot-\u63A8\u8350" aria-hidden="true">#</a> \u4F7F\u7528<code>arthas-boot</code>\uFF08\u63A8\u8350\uFF09</h3><p>\u4E0B\u8F7D<code>arthas-boot.jar</code>\uFF0C\u7136\u540E\u7528<code>java -jar</code>\u7684\u65B9\u5F0F\u542F\u52A8\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">curl</span> <span class="token parameter variable">-O</span> https://arthas.aliyun.com/arthas-boot.jar
|
||||
<span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div></div></div><p>\u6253\u5370\u5E2E\u52A9\u4FE1\u606F\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar <span class="token parameter variable">-h</span>
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>\u5982\u679C\u4E0B\u8F7D\u901F\u5EA6\u6BD4\u8F83\u6162\uFF0C\u53EF\u4EE5\u4F7F\u7528 aliyun \u7684\u955C\u50CF\uFF1A</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token function">java</span> <span class="token parameter variable">-jar</span> arthas-boot.jar --repo-mirror aliyun --use-http
|
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
const e=JSON.parse('{"key":"v-0f1c4082","path":"/doc/expert/intro.html","title":"\u65E0\u7591 \u4E13\u5BB6\u667A\u80FD\u7B54\u7591 \u4ECB\u7ECD","lang":"zh-CN","frontmatter":{"sidebar_position":1},"excerpt":"","headers":[{"level":2,"title":"\u8BF7\u4E0D\u8981\u5BF9\u6211\u4EEC\u66B4\u9732\u60A8\u7684\u7528\u6237\u540D\u548C\u5BC6\u7801\u7B49\u5173\u952E\u4FE1\u606F","slug":"\u8BF7\u4E0D\u8981\u5BF9\u6211\u4EEC\u66B4\u9732\u60A8\u7684\u7528\u6237\u540D\u548C\u5BC6\u7801\u7B49\u5173\u952E\u4FE1\u606F","link":"#\u8BF7\u4E0D\u8981\u5BF9\u6211\u4EEC\u66B4\u9732\u60A8\u7684\u7528\u6237\u540D\u548C\u5BC6\u7801\u7B49\u5173\u952E\u4FE1\u606F","children":[]},{"level":2,"title":"\u4F7F\u7528\u65B9\u6CD5\uFF1A","slug":"\u4F7F\u7528\u65B9\u6CD5","link":"#\u4F7F\u7528\u65B9\u6CD5","children":[]},{"level":2,"title":"\u5DF2\u63A5\u5165\u4EA7\u54C1\uFF08\u70B9\u5BF9\u5E94\u7684\u94FE\u63A5\u53EF\u4EE5\u8BA9\u673A\u5668\u4EBA\u53EA\u56DE\u7B54\u5BF9\u5E94\u4EA7\u54C1\u7684\u95EE\u9898\uFF09\uFF1A","slug":"\u5DF2\u63A5\u5165\u4EA7\u54C1-\u70B9\u5BF9\u5E94\u7684\u94FE\u63A5\u53EF\u4EE5\u8BA9\u673A\u5668\u4EBA\u53EA\u56DE\u7B54\u5BF9\u5E94\u4EA7\u54C1\u7684\u95EE\u9898","link":"#\u5DF2\u63A5\u5165\u4EA7\u54C1-\u70B9\u5BF9\u5E94\u7684\u94FE\u63A5\u53EF\u4EE5\u8BA9\u673A\u5668\u4EBA\u53EA\u56DE\u7B54\u5BF9\u5E94\u4EA7\u54C1\u7684\u95EE\u9898","children":[]}],"git":{"updatedTime":1720424153000,"contributors":[{"name":"answeropensource","email":"answeropensource@alibabacloud.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@users.noreply.github.com","commits":1}]},"filePathRelative":"doc/expert/intro.md","version":"3.7.2"}');export{e as data};
|
@ -1 +1 @@
|
||||
const e=JSON.parse('{"key":"v-207b7d70","path":"/en/doc/jad.html","title":"jad","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Options","slug":"options","link":"#options","children":[]},{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[{"level":3,"title":"Decompile java.lang.String","slug":"decompile-java-lang-string","link":"#decompile-java-lang-string","children":[]},{"level":3,"title":"Print source only","slug":"print-source-only","link":"#print-source-only","children":[]},{"level":3,"title":"Decompile the specified method","slug":"decompile-the-specified-method","link":"#decompile-the-specified-method","children":[]},{"level":3,"title":"Do not print line numbers","slug":"do-not-print-line-numbers","link":"#do-not-print-line-numbers","children":[]},{"level":3,"title":"Decompile with specified classLoader","slug":"decompile-with-specified-classloader","link":"#decompile-with-specified-classloader","children":[]}]}],"git":{"updatedTime":1692845375000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/jad.md","version":"3.7.2"}');export{e as data};
|
||||
const e=JSON.parse('{"key":"v-207b7d70","path":"/en/doc/jad.html","title":"jad","lang":"en-US","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"Options","slug":"options","link":"#options","children":[]},{"level":2,"title":"Usage","slug":"usage","link":"#usage","children":[{"level":3,"title":"Decompile java.lang.String","slug":"decompile-java-lang-string","link":"#decompile-java-lang-string","children":[]},{"level":3,"title":"Print source only","slug":"print-source-only","link":"#print-source-only","children":[]},{"level":3,"title":"Decompile the specified method","slug":"decompile-the-specified-method","link":"#decompile-the-specified-method","children":[]},{"level":3,"title":"Do not print line numbers","slug":"do-not-print-line-numbers","link":"#do-not-print-line-numbers","children":[]},{"level":3,"title":"Decompile with specified classLoader","slug":"decompile-with-specified-classloader","link":"#decompile-with-specified-classloader","children":[]},{"level":3,"title":"Decompile with specified directory for dumpping class","slug":"decompile-with-specified-directory-for-dumpping-class","link":"#decompile-with-specified-directory-for-dumpping-class","children":[]}]}],"git":{"updatedTime":1694076119000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"Allan-QLB","email":"68638598+Allan-QLB@users.noreply.github.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"en/doc/jad.md","version":"3.7.2"}');export{e as data};
|
@ -1 +1 @@
|
||||
const l=JSON.parse('{"key":"v-211d675c","path":"/doc/jad.html","title":"jad","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u53C2\u6570\u8BF4\u660E","slug":"\u53C2\u6570\u8BF4\u660E","link":"#\u53C2\u6570\u8BF4\u660E","children":[]},{"level":2,"title":"\u4F7F\u7528\u53C2\u8003","slug":"\u4F7F\u7528\u53C2\u8003","link":"#\u4F7F\u7528\u53C2\u8003","children":[{"level":3,"title":"\u53CD\u7F16\u8BD1java.lang.String","slug":"\u53CD\u7F16\u8BD1java-lang-string","link":"#\u53CD\u7F16\u8BD1java-lang-string","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u65F6\u53EA\u663E\u793A\u6E90\u4EE3\u7801","slug":"\u53CD\u7F16\u8BD1\u65F6\u53EA\u663E\u793A\u6E90\u4EE3\u7801","link":"#\u53CD\u7F16\u8BD1\u65F6\u53EA\u663E\u793A\u6E90\u4EE3\u7801","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u6307\u5B9A\u7684\u51FD\u6570","slug":"\u53CD\u7F16\u8BD1\u6307\u5B9A\u7684\u51FD\u6570","link":"#\u53CD\u7F16\u8BD1\u6307\u5B9A\u7684\u51FD\u6570","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u65F6\u4E0D\u663E\u793A\u884C\u53F7","slug":"\u53CD\u7F16\u8BD1\u65F6\u4E0D\u663E\u793A\u884C\u53F7","link":"#\u53CD\u7F16\u8BD1\u65F6\u4E0D\u663E\u793A\u884C\u53F7","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9A ClassLoader","slug":"\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9A-classloader","link":"#\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9A-classloader","children":[]}]}],"git":{"updatedTime":1692845375000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1}]},"filePathRelative":"doc/jad.md","version":"3.7.2"}');export{l as data};
|
||||
const l=JSON.parse('{"key":"v-211d675c","path":"/doc/jad.html","title":"jad","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u53C2\u6570\u8BF4\u660E","slug":"\u53C2\u6570\u8BF4\u660E","link":"#\u53C2\u6570\u8BF4\u660E","children":[]},{"level":2,"title":"\u4F7F\u7528\u53C2\u8003","slug":"\u4F7F\u7528\u53C2\u8003","link":"#\u4F7F\u7528\u53C2\u8003","children":[{"level":3,"title":"\u53CD\u7F16\u8BD1java.lang.String","slug":"\u53CD\u7F16\u8BD1java-lang-string","link":"#\u53CD\u7F16\u8BD1java-lang-string","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u65F6\u53EA\u663E\u793A\u6E90\u4EE3\u7801","slug":"\u53CD\u7F16\u8BD1\u65F6\u53EA\u663E\u793A\u6E90\u4EE3\u7801","link":"#\u53CD\u7F16\u8BD1\u65F6\u53EA\u663E\u793A\u6E90\u4EE3\u7801","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u6307\u5B9A\u7684\u51FD\u6570","slug":"\u53CD\u7F16\u8BD1\u6307\u5B9A\u7684\u51FD\u6570","link":"#\u53CD\u7F16\u8BD1\u6307\u5B9A\u7684\u51FD\u6570","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u65F6\u4E0D\u663E\u793A\u884C\u53F7","slug":"\u53CD\u7F16\u8BD1\u65F6\u4E0D\u663E\u793A\u884C\u53F7","link":"#\u53CD\u7F16\u8BD1\u65F6\u4E0D\u663E\u793A\u884C\u53F7","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9A ClassLoader","slug":"\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9A-classloader","link":"#\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9A-classloader","children":[]},{"level":3,"title":"\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9Adump class\u6587\u4EF6\u76EE\u5F55","slug":"\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9Adump-class\u6587\u4EF6\u76EE\u5F55","link":"#\u53CD\u7F16\u8BD1\u65F6\u6307\u5B9Adump-class\u6587\u4EF6\u76EE\u5F55","children":[]}]}],"git":{"updatedTime":1694076149000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":2},{"name":"Allan-QLB","email":"68638598+Allan-QLB@users.noreply.github.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@gmail.com","commits":1},{"name":"hengyunabc","email":"hengyunabc@users.noreply.github.com","commits":1}]},"filePathRelative":"doc/jad.md","version":"3.7.2"}');export{l as data};
|
@ -1,4 +1,4 @@
|
||||
import{_ as r}from"./arthas-output-recording.5e4ef7bc.js";import{_ as i,o,c as d,a as e,b as s,e as t,t as l,d as n,r as c}from"./app.98a29f3d.js";const p={},u=e("h1",{id:"jfr",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#jfr","aria-hidden":"true"},"#"),t(" jfr")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-jfr",target:"_blank",rel:"noopener noreferrer"},g=e("code",null,"jfr",-1),m=t(" online tutorial"),f=n(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Java Flight Recorder (JFR) is a tool for collecting diagnostic and profiling data about a running Java application. It is integrated into the Java Virtual Machine (JVM) and causes almost no performance overhead, so it can be used even in heavily loaded production environments.</p></div><p>The <code>jfr</code> command supports starting and stopping JFR recordings during dynamic program running. Recording collects data about <em>events</em>. Events occur in the JVM or the Java application at a specific point in time. Each event has a name, a time stamp, and an optional <em>payload</em>. The payload is the data associated with an event, for example, the CPU usage, the Java heap size before and after the event, the thread ID of the lock holder, and so on.</p><p>The basic usage of the <code>jfr</code> command is<code>jfr cmd [actionArg]</code></p><blockquote><p>Note: jfr is supported only after the 8u262 version of jdk8</p></blockquote><h3 id="supported-options" tabindex="-1"><a class="header-anchor" href="#supported-options" aria-hidden="true">#</a> Supported Options</h3><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;"><em>cmd</em></td><td style="text-align:left;">Command to execute, support\u3010start\uFF0Cstatus\uFF0Cdump\uFF0Cstop\u3011</td></tr><tr><td style="text-align:right;"><em>actionArg</em></td><td style="text-align:left;">Attribute name pattern</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">Name of recording</td></tr><tr><td style="text-align:right;">[r:]</td><td style="text-align:left;">Recording id</td></tr><tr><td style="text-align:right;">[dumponexit:]</td><td style="text-align:left;">When the program exits, whether to dump the .jfr file. (boolean false)</td></tr><tr><td style="text-align:right;">[d:]</td><td style="text-align:left;">Duration of recording, i.e. 60s, 2m, 5h, 3d. default no delay</td></tr><tr><td style="text-align:right;">[duration:]</td><td style="text-align:left;">Duration of recording, default forever.</td></tr><tr><td style="text-align:right;">[s:]</td><td style="text-align:left;">Server-side template, The default is default.jfc located at <code>$JAVA_HOME/lib/jfr/default.jfc</code></td></tr><tr><td style="text-align:right;">[f:]</td><td style="text-align:left;">Resulting recording filename</td></tr><tr><td style="text-align:right;">[maxage:]</td><td style="text-align:left;">Maximum age of buffer data</td></tr><tr><td style="text-align:right;">[maxsize:]</td><td style="text-align:left;">Maximum size of buffers in bytes</td></tr><tr><td style="text-align:right;">[state:]</td><td style="text-align:left;">Recording state</td></tr></tbody></table><h2 id="start-jfr-recording" tabindex="-1"><a class="header-anchor" href="#start-jfr-recording" aria-hidden="true">#</a> Start jfr recording</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ jfr start
|
||||
import{_ as r}from"./arthas-output-recording.5e4ef7bc.js";import{_ as i,o,c as d,a as e,b as s,e as t,t as l,d as n,r as c}from"./app.977e81c1.js";const p={},u=e("h1",{id:"jfr",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#jfr","aria-hidden":"true"},"#"),t(" jfr")],-1),h={href:"https://arthas.aliyun.com/doc/arthas-tutorials.html?language=en&id=command-jfr",target:"_blank",rel:"noopener noreferrer"},g=e("code",null,"jfr",-1),m=t(" online tutorial"),f=n(`<div class="custom-container tip"><p class="custom-container-title">TIP</p><p>Java Flight Recorder (JFR) is a tool for collecting diagnostic and profiling data about a running Java application. It is integrated into the Java Virtual Machine (JVM) and causes almost no performance overhead, so it can be used even in heavily loaded production environments.</p></div><p>The <code>jfr</code> command supports starting and stopping JFR recordings during dynamic program running. Recording collects data about <em>events</em>. Events occur in the JVM or the Java application at a specific point in time. Each event has a name, a time stamp, and an optional <em>payload</em>. The payload is the data associated with an event, for example, the CPU usage, the Java heap size before and after the event, the thread ID of the lock holder, and so on.</p><p>The basic usage of the <code>jfr</code> command is<code>jfr cmd [actionArg]</code></p><blockquote><p>Note: jfr is supported only after the 8u262 version of jdk8</p></blockquote><h3 id="supported-options" tabindex="-1"><a class="header-anchor" href="#supported-options" aria-hidden="true">#</a> Supported Options</h3><table><thead><tr><th style="text-align:right;">Name</th><th style="text-align:left;">Specification</th></tr></thead><tbody><tr><td style="text-align:right;"><em>cmd</em></td><td style="text-align:left;">Command to execute, support\u3010start\uFF0Cstatus\uFF0Cdump\uFF0Cstop\u3011</td></tr><tr><td style="text-align:right;"><em>actionArg</em></td><td style="text-align:left;">Attribute name pattern</td></tr><tr><td style="text-align:right;">[n:]</td><td style="text-align:left;">Name of recording</td></tr><tr><td style="text-align:right;">[r:]</td><td style="text-align:left;">Recording id</td></tr><tr><td style="text-align:right;">[dumponexit:]</td><td style="text-align:left;">When the program exits, whether to dump the .jfr file. (boolean false)</td></tr><tr><td style="text-align:right;">[d:]</td><td style="text-align:left;">Duration of recording, i.e. 60s, 2m, 5h, 3d. default no delay</td></tr><tr><td style="text-align:right;">[duration:]</td><td style="text-align:left;">Duration of recording, default forever.</td></tr><tr><td style="text-align:right;">[s:]</td><td style="text-align:left;">Server-side template, The default is default.jfc located at <code>$JAVA_HOME/lib/jfr/default.jfc</code></td></tr><tr><td style="text-align:right;">[f:]</td><td style="text-align:left;">Resulting recording filename</td></tr><tr><td style="text-align:right;">[maxage:]</td><td style="text-align:left;">Maximum age of buffer data</td></tr><tr><td style="text-align:right;">[maxsize:]</td><td style="text-align:left;">Maximum size of buffers in bytes</td></tr><tr><td style="text-align:right;">[state:]</td><td style="text-align:left;">Recording state</td></tr></tbody></table><h2 id="start-jfr-recording" tabindex="-1"><a class="header-anchor" href="#start-jfr-recording" aria-hidden="true">#</a> Start jfr recording</h2><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ jfr start
|
||||
Started recording 1. No limit specified, using maxsize=250MB as default.
|
||||
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div></div></div><div class="custom-container tip"><p class="custom-container-title">TIP</p><p>The default JFR record is started.</p></div><p>Start the JFR recording, specify the recording name, duration, file saving path.</p><div class="language-text ext-text line-numbers-mode"><pre class="language-text"><code>$ jfr start -n myRecording --duration 60s -f /tmp/myRecording.jfr
|
||||
Started recording 2. The result will be written to:
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
const l=JSON.parse('{"key":"v-41806853","path":"/doc/jfr.html","title":"jfr","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u53C2\u6570\u8BF4\u660E","slug":"\u53C2\u6570\u8BF4\u660E","link":"#\u53C2\u6570\u8BF4\u660E","children":[]},{"level":2,"title":"\u542F\u52A8 JFR \u8BB0\u5F55","slug":"\u542F\u52A8-jfr-\u8BB0\u5F55","link":"#\u542F\u52A8-jfr-\u8BB0\u5F55","children":[]},{"level":2,"title":"\u67E5\u770B JFR \u8BB0\u5F55\u72B6\u6001","slug":"\u67E5\u770B-jfr-\u8BB0\u5F55\u72B6\u6001","link":"#\u67E5\u770B-jfr-\u8BB0\u5F55\u72B6\u6001","children":[]},{"level":2,"title":"dump jfr \u8BB0\u5F55","slug":"dump-jfr-\u8BB0\u5F55","link":"#dump-jfr-\u8BB0\u5F55","children":[]},{"level":2,"title":"\u505C\u6B62 jfr \u8BB0\u5F55","slug":"\u505C\u6B62-jfr-\u8BB0\u5F55","link":"#\u505C\u6B62-jfr-\u8BB0\u5F55","children":[]},{"level":2,"title":"\u901A\u8FC7\u6D4F\u89C8\u5668\u67E5\u770B arthas-output \u4E0B\u9762 JFR \u8BB0\u5F55\u7684\u7ED3\u679C","slug":"\u901A\u8FC7\u6D4F\u89C8\u5668\u67E5\u770B-arthas-output-\u4E0B\u9762-jfr-\u8BB0\u5F55\u7684\u7ED3\u679C","link":"#\u901A\u8FC7\u6D4F\u89C8\u5668\u67E5\u770B-arthas-output-\u4E0B\u9762-jfr-\u8BB0\u5F55\u7684\u7ED3\u679C","children":[]}],"git":{"updatedTime":1692845375000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"longxu0509","email":"108991596+longxu0509@users.noreply.github.com","commits":1}]},"filePathRelative":"doc/jfr.md","version":"3.7.2"}');export{l as data};
|
||||
const l=JSON.parse('{"key":"v-41806853","path":"/doc/jfr.html","title":"jfr","lang":"zh-CN","frontmatter":{},"excerpt":"","headers":[{"level":2,"title":"\u53C2\u6570\u8BF4\u660E","slug":"\u53C2\u6570\u8BF4\u660E","link":"#\u53C2\u6570\u8BF4\u660E","children":[]},{"level":2,"title":"\u542F\u52A8 JFR \u8BB0\u5F55","slug":"\u542F\u52A8-jfr-\u8BB0\u5F55","link":"#\u542F\u52A8-jfr-\u8BB0\u5F55","children":[]},{"level":2,"title":"\u67E5\u770B JFR \u8BB0\u5F55\u72B6\u6001","slug":"\u67E5\u770B-jfr-\u8BB0\u5F55\u72B6\u6001","link":"#\u67E5\u770B-jfr-\u8BB0\u5F55\u72B6\u6001","children":[]},{"level":2,"title":"dump jfr \u8BB0\u5F55","slug":"dump-jfr-\u8BB0\u5F55","link":"#dump-jfr-\u8BB0\u5F55","children":[]},{"level":2,"title":"\u505C\u6B62 jfr \u8BB0\u5F55","slug":"\u505C\u6B62-jfr-\u8BB0\u5F55","link":"#\u505C\u6B62-jfr-\u8BB0\u5F55","children":[]},{"level":2,"title":"\u901A\u8FC7\u6D4F\u89C8\u5668\u67E5\u770B arthas-output \u4E0B\u9762 JFR \u8BB0\u5F55\u7684\u7ED3\u679C","slug":"\u901A\u8FC7\u6D4F\u89C8\u5668\u67E5\u770B-arthas-output-\u4E0B\u9762-jfr-\u8BB0\u5F55\u7684\u7ED3\u679C","link":"#\u901A\u8FC7\u6D4F\u89C8\u5668\u67E5\u770B-arthas-output-\u4E0B\u9762-jfr-\u8BB0\u5F55\u7684\u7ED3\u679C","children":[]}],"git":{"updatedTime":1692004748000,"contributors":[{"name":"Fatpandac","email":"i@fatpandac.com","commits":1},{"name":"longxu0509","email":"108991596+longxu0509@users.noreply.github.com","commits":1}]},"filePathRelative":"doc/jfr.md","version":"3.7.2"}');export{l as data};
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue