<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE erlref SYSTEM "erlref.dtd">

<erlref>
  <header>
    <copyright>
      <year>2002</year>
      <year>2013</year>
      <holder>Ericsson AB, All Rights Reserved</holder>
    </copyright>
    <legalnotice>
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
 
      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

  The Initial Developer of the Original Code is Ericsson AB.
    </legalnotice>

    <title>etop</title>
    <prepared>Siri hansen</prepared>
    <responsible></responsible>
    <docno></docno>
    <approved></approved>
    <checked></checked>
    <date></date>
    <rev></rev>
    <file></file>
  </header>
  <module>etop</module>
  <modulesummary>Erlang Top is a tool for presenting information about erlang processes similar to the information presented by "top" in UNIX.</modulesummary>
  <description>

    <p><c>etop</c> should be started with the provided scripts
      <c>etop</c>. This will start a hidden erlang node
      which connects to the node to be measured. The measured node is
      given with the <c>-node</c> option. If the measured node has a
      different cookie than the default cookie for the user who
      invokes the script, the cookie must be explicitly given witht
      the <c>-setcookie</c> option.</p>

    <p>Under Windows the batch file <c>etop.bat</c> can be used.</p>

    <p>The following configuration parameters exist for the
    <c>etop</c> tool. When executing the <c>etop</c> script,
    these parameters can be given as command line options,
    e.g. <c>etop -node testnode@myhost -setcookie MyCookie</c>.</p>
    <taglist>
      <tag>node</tag>
      <item>The measured node.
            <br></br>
Value: atom()
            <br></br>
Mandatory</item>
      <tag>setcookie</tag>
      <item>Cookie to use for the etop node - must be the same
       as the cookie on the measured node.
            <br></br>
Value: atom()</item>
      <tag>lines</tag>
      <item>Number of lines (processes) to display. 
            <br></br>
Value: integer()
            <br></br>
Default: 10</item>
      <tag>interval</tag>
      <item>The time interval (in seconds) between each update of
       the display. 
            <br></br>
Value: integer()
            <br></br>
Default: 5</item>
      <tag>accumulate</tag>
      <item>If <c>true</c> the execution time and reductions are
       accumulated. 
            <br></br>
Value: boolean()
            <br></br>
Default: <c>false</c></item>
      <tag>sort</tag>
      <item>Identifies what information to sort by. 
            <br></br>
Value: <c>runtime | reductions | memory | msg_q</c>      <br></br>
Default: <c>runtime</c> (<c>reductions</c> if 
      <c>tracing=off</c>)</item>
      <tag>tracing</tag>
      <item><c>etop</c> uses the erlang trace facility, and thus no
       other tracing is possible on the measured node while
      <c>etop</c> is running, unless this option is set to
      <c>off</c>. Also helpful if the <c>etop</c> tracing causes too
       high load on the measured node. With tracing off, runtime is
       not measured.
            <br></br>
Value: <c>on | off</c>      <br></br>
Default: <c>on</c></item>
    </taglist>

    <p>See the <seealso marker="etop_ug">user's guide</seealso> for
    more information about the <c>etop</c> tool.</p>

  </description>
  <funcs>
    <func>
      <name>start() -> ok</name>
      <fsummary>Start etop</fsummary>
      <desc>
        <p>This function starts <c>etop</c>.
        Note that etop is preferably started with the etop script.</p>
      </desc>
    </func>
    <func>
      <name>start(Options) -> ok</name>
      <fsummary>Start etop</fsummary>
      <type>
        <v>Options = [Option]</v>
        <v>Option = {Key, Value}</v>
        <v>Key = atom()</v>
        <v>Value = term()</v>
      </type>
      <desc>
        <p>This function starts <c>etop</c>. Use
          <seealso marker="#help/0">help/0</seealso> to see a
          description of the possible options.</p>
      </desc>
    </func>
    <func>
      <name>help() -> ok</name>
      <fsummary>Print etop's help</fsummary>
      <desc>
        <p>This function prints the help of <c>etop</c> and
          its options.</p>
      </desc>
    </func>
    <func>
      <name>config(Key,Value) -> Result</name>
      <fsummary>Change tool's configuration</fsummary>
      <type>
        <v>Result = ok | {error,Reason}</v>
        <v>Key = lines | interval | accumulate | sort</v>
        <v>Value = term()</v>
      </type>
      <desc>
        <p>This function is used to change the tool's configuration
          parameters during runtime. The table above indicates the
          allowed values for each parameter.</p>
      </desc>
    </func>
    <func>
      <name>dump(File) -> Result</name>
      <fsummary>Dump the current display to a file.</fsummary>
      <type>
        <v>Result = ok | {error,Reason}</v>
        <v>File = string()</v>
      </type>
      <desc>
        <p>This function dumps the current display to a text file.</p>
      </desc>
    </func>
    <func>
      <name>stop() -> stop</name>
      <fsummary>Terminate etop</fsummary>
      <desc>
        <p>This function terminates <c>etop</c>.</p>
      </desc>
    </func>
  </funcs>
</erlref>

