You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
arthas/batch-support.html

318 lines
11 KiB
HTML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="zh-CN" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="zh-CN" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>批处理功能 &mdash; Arthas 3.0.5-SNAPSHOT 文档</title>
<link rel="shortcut icon" href="_static/favicon.ico"/>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="_static/overrides.css" type="text/css" />
<link rel="index" title="索引" href="genindex.html" />
<link rel="search" title="搜索" href="search.html" />
<link rel="next" title="命令列表" href="commands.html" />
<link rel="prev" title="执行结果存日志" href="save-log.html" />
<script src="_static/center_page.js"></script>
<script src="_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="index.html" class="icon icon-home"> Arthas
</a>
<div class="version">
3.0.5-SNAPSHOT
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="install-detail.html">安装</a></li>
<li class="toctree-l1"><a class="reference internal" href="quick-start.html">快速入门</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="advanced-use.html">进阶使用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#">基础命令</a></li>
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#jvm">jvm相关</a></li>
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#class-classloader">class/classloader相关</a></li>
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#monitor-watch-trace">monitor/watch/trace相关</a></li>
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#options">options</a></li>
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#">管道</a></li>
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#">后台异步任务</a></li>
<li class="toctree-l2"><a class="reference internal" href="advanced-use.html#web-console">Web Console</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="advanced-use.html#">其他特性</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="async.html">异步命令支持</a></li>
<li class="toctree-l3"><a class="reference internal" href="save-log.html">执行结果存日志</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">批处理的支持</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#">使用方法</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference external" href="https://github.com/alibaba/arthas/issues/11">ognl表达式的用法说明</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="commands.html">命令列表</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/alibaba/arthas/labels/user-case">用户案例</a></li>
<li class="toctree-l1"><a class="reference internal" href="release-notes.html">Release Notes</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/alibaba/arthas/labels/question-answered">Questions and answers</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/alibaba/arthas">Fork me at GitHub</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/alibaba/arthas/blob/master/CONTRIBUTING.md">参与贡献</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">Arthas</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> &raquo;</li>
<li><a href="advanced-use.html">进阶使用</a> &raquo;</li>
<li>批处理功能</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/alibaba/arthas/blob/master/site/src/site/sphinx/batch-support.md" class="fa fa-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="">
<span id="id1"></span><h1>批处理功能<a class="headerlink" href="#" title="永久链接至标题"></a></h1>
<blockquote>
<div>通过批处理功能arthas支持一次性批量运行多个命令并取得命令执行的结果。</div></blockquote>
<div class="section" id="">
<span id="id2"></span><h2>使用方法<a class="headerlink" href="#" title="永久链接至标题"></a></h2>
<div class="section" id="">
<span id="id3"></span><h3>第一步: 创建你的批处理脚本<a class="headerlink" href="#" title="永久链接至标题"></a></h3>
<p>这里我们新建了一个<code class="docutils literal notranslate"><span class="pre">test.as</span></code>脚本,为了规范,我们采用了.as后缀名但事实上任意的本文文件都ok。</p>
<blockquote>
<div><p>注意事项</p>
<ul class="simple">
<li>目前需要每个命令占一行</li>
<li>dashboard务必开启批处理模式(<code class="docutils literal notranslate"><span class="pre">-b</span></code>),指定执行次数(<code class="docutils literal notranslate"><span class="pre">-n</span></code>),否则会导致批处理脚本无法终止</li>
<li>watch/tt/trace/monitor/stack等命令务必指定执行次数(<code class="docutils literal notranslate"><span class="pre">-n</span></code>),否则会导致批处理脚本无法终止</li>
<li>可以使用异步后台任务,如 <code class="docutils literal notranslate"><span class="pre">watch</span> <span class="pre">c.t.X</span> <span class="pre">test</span> <span class="pre">returnObj</span> <span class="pre">&gt;</span> <span class="pre">&amp;</span></code>,让命令一直在后台运行,通过日志获取结果,<a class="reference internal" href="async.html"><span class="doc">获取更多异步任务的信息</span></a></li>
</ul>
</div></blockquote>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>➜ arthas git:(develop) cat /var/tmp/test.as
help
dashboard -b -n 1
session
thread
sc -d org.apache.commons.lang.StringUtils
</pre></div>
</div>
</div>
<div class="section" id="">
<span id="id4"></span><h3>第二步: 运行你的批处理脚本<a class="headerlink" href="#" title="永久链接至标题"></a></h3>
<p>通过<code class="docutils literal notranslate"><span class="pre">-b</span></code>开启批处理模式, <code class="docutils literal notranslate"><span class="pre">-f</span></code>执行脚本文件, 批处理脚本默认会输出到标准输出中,可以将结果重定向到文件中。</p>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>./as.sh -b -f /var/tmp/test.as <span class="m">56328</span> &gt; test.out
</pre></div>
</div>
</div>
<div class="section" id="">
<span id="id5"></span><h3>第三步: 查看运行结果<a class="headerlink" href="#" title="永久链接至标题"></a></h3>
<div class="highlight-sh notranslate"><div class="highlight"><pre><span></span>cat test.out
</pre></div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="commands.html" class="btn btn-neutral float-right" title="命令列表" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="save-log.html" class="btn btn-neutral" title="执行结果存日志" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2018, Alibaba Middleware Group, and contributors.
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
VERSION:'3.0.5-SNAPSHOT',
LANGUAGE:'zh_CN',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/translations.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
<div class="github-fork-ribbon-wrapper right">
<div class="github-fork-ribbon">
<a href="https://github.com/alibaba/arthas">Fork me at GitHub</a>
</div>
</div>
<script type="text/javascript" src="_static/add_badges.js"></script>
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?d5c5e25b100f0eb51a4c35c8a86ea9b4";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
</body>
</html>