~ubuntu-branches/debian/squeeze/erlang/squeeze

« back to all changes in this revision

Viewing changes to lib/appmon/doc/src/appmon_chapter.xml

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-02-15 16:42:52 UTC
  • mfrom: (1.1.13 upstream)
  • Revision ID: james.westby@ubuntu.com-20090215164252-dxpjjuq108nz4noa
Tags: 1:12.b.5-dfsg-2
Upload to unstable after lenny is released.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version="1.0" encoding="latin1" ?>
 
2
<!DOCTYPE chapter SYSTEM "chapter.dtd">
 
3
 
 
4
<chapter>
 
5
  <header>
 
6
    <copyright>
 
7
      <year>2000</year>
 
8
      <year>2007</year>
 
9
      <holder>Ericsson AB, All Rights Reserved</holder>
 
10
    </copyright>
 
11
    <legalnotice>
 
12
  The contents of this file are subject to the Erlang Public License,
 
13
  Version 1.1, (the "License"); you may not use this file except in
 
14
  compliance with the License. You should have received a copy of the
 
15
  Erlang Public License along with this software. If not, it can be
 
16
  retrieved online at http://www.erlang.org/.
 
17
 
 
18
  Software distributed under the License is distributed on an "AS IS"
 
19
  basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
 
20
  the License for the specific language governing rights and limitations
 
21
  under the License.
 
22
 
 
23
  The Initial Developer of the Original Code is Ericsson AB.
 
24
    </legalnotice>
 
25
 
 
26
    <title>Appmon</title>
 
27
    <prepared></prepared>
 
28
    <docno></docno>
 
29
    <date></date>
 
30
    <rev></rev>
 
31
  </header>
 
32
 
 
33
  <section>
 
34
    <title>Introduction</title>
 
35
    <p>The application monitor Appmon is a graphical node and application viewer. The tool shows an overview of all applications on all known nodes, and it is possible to view the process tree for an application running on any of the nodes.</p>
 
36
    <note>
 
37
      <p>If the Appmon code is not available at a node, for example an
 
38
        embedded node, this node is ignored by Appmon and is not shown
 
39
        in the Appmon window.</p>
 
40
    </note>
 
41
  </section>
 
42
 
 
43
  <section>
 
44
    <title>Getting Started with Appmon</title>
 
45
    <p>Start Appmon by calling <c><![CDATA[appmon:start()]]></c>. It will start the <seealso marker="#main_win">main window</seealso> showing a load meter and the applications running at the current node. By clicking on one of the applications a window showing the process tree of the application will be opened, the <seealso marker="#app_win">application window</seealso>.</p>
 
46
    <p>The main window is equipped with a menubar from which it is possible to:</p>
 
47
    <list type="bulleted">
 
48
      <item>exit Appmon</item>
 
49
      <item>perform some operations on the node</item>
 
50
      <item>set how information should be displayed</item>
 
51
      <item>select which node to show</item>
 
52
      <item>open help (this document).</item>
 
53
    </list>
 
54
    <p>The application window shows the process tree for an application with each process displayed as a box. It is possible to view information about the processes, to send messages to them, and to trace and kill them.</p>
 
55
  </section>
 
56
 
 
57
  <section>
 
58
    <title>The Main Window</title>
 
59
    <marker id="main_win"></marker>
 
60
    <p>The main window shows a load meter and all applications running at the displayed node. Select which node to display in the window by chosing the node name from the Nodes menu. It is also possible to run Appmon in a many-window mode where a new instance of the main window is opened for each node to be displayed.</p>
 
61
    <image file="main_win">
 
62
      <icaption>The Main Window.</icaption>
 
63
    </image>
 
64
    <p>The load meter shows load measured as processor time, or as the length of the ready queue.</p>
 
65
    <p>Every application running at the node is shown as a button. Clicking the button will open the application window showing the process tree for the application.</p>
 
66
 
 
67
    <section>
 
68
      <title>The File Menu</title>
 
69
      <taglist>
 
70
        <tag><em>Show List Box...</em></tag>
 
71
        <item>This will open the <seealso marker="#listbox_win">listbox window</seealso> which lists all nodes and applications. This window can be more easy to use than the normal, graphical user interface when the system consists of a large number of nodes and/or applications.</item>
 
72
        <tag><em>Close</em></tag>
 
73
        <item>Close the window. If no other instance of the main window exists, Appmon will be stopped.</item>
 
74
        <tag><em>Exit</em></tag>
 
75
        <item>Stop Appmon.</item>
 
76
      </taglist>
 
77
    </section>
 
78
 
 
79
    <section>
 
80
      <title>The Actions Menu</title>
 
81
      <taglist>
 
82
        <tag><em>Reboot</em></tag>
 
83
        <item>Call <c><![CDATA[init:reboot()]]></c> at the currently displayed node. This will stop the node. If the <c><![CDATA[-heart]]></c> system flag was given, the heart program will try to reboot the system.</item>
 
84
        <tag><em>Restart</em></tag>
 
85
        <item>Call <c><![CDATA[init:restart()]]></c> at the currently displayed node. This will restart the node.</item>
 
86
        <tag><em>Stop</em></tag>
 
87
        <item>Call <c><![CDATA[init:stop()]]></c> at the currently displayed node. This will stop the node.</item>
 
88
        <tag><em>Ping</em></tag>
 
89
        <item>Call <c><![CDATA[net:ping(Node)]]></c> where <c><![CDATA[Node]]></c> is the currently displayed node. This can be useful when the connection to the node has been lost.</item>
 
90
      </taglist>
 
91
    </section>
 
92
 
 
93
    <section>
 
94
      <title>The Options Menu</title>
 
95
      <taglist>
 
96
        <tag><em>One window/Many windows</em></tag>
 
97
        <item>Select one of these radio button to run Appmon in one-window or many-window mode. In many-windows mode, a new instance of the main window is opened for each node to be displayed. The default value is one-window mode.</item>
 
98
        <tag><em>Load: time/queue</em></tag>
 
99
        <item>Select one of these radio buttons to either calculate load as processor time or as the length of the ready queue, which is the number of processes ready to execute. By default, the load is calculated as processor time.</item>
 
100
        <tag><em>Load: progressive/linear</em></tag>
 
101
        <item>Select one of these radio buttons to show load either according to a progressive or a linear scale. By default, the load is shown according to a progressive scale. </item>
 
102
      </taglist>
 
103
    </section>
 
104
 
 
105
    <section>
 
106
      <title>The Nodes Menu</title>
 
107
      <p>The Nodes menu contains all currently and previously known nodes,
 
108
        where the Appmon code is available. Nodes where the Appmon code is
 
109
        not available, for example embedded nodes, are ignored by Appmon and
 
110
        are not shown.</p>
 
111
      <p>Selecting a node from the Nodes menu will cause that node to be displayed in either the same window, or in a new window, depending on if Appmon is run in one-window or many-windows mode. If the connection to the node has been lost, this will be shown in the window.</p>
 
112
    </section>
 
113
 
 
114
    <section>
 
115
      <title>The Help Menu</title>
 
116
      <taglist>
 
117
        <tag><em>Help</em></tag>
 
118
        <item>Selecting Help from the Help menu will cause the HTML version of the Appmon User's Guide (this document) to be displayed. Currently this function requires Netscape to be up and running.</item>
 
119
      </taglist>
 
120
    </section>
 
121
  </section>
 
122
 
 
123
  <section>
 
124
    <title>The Application Window</title>
 
125
    <marker id="app_win"></marker>
 
126
    <p>The application window shows the process tree for an application. The window title contains the application name and the node name. The window also contains a menubar and a toolbar.</p>
 
127
    <p>The application window can be opened from the main window by clicking on the button denoting the application, or from the listbox window by selecting the application and clicking on the <em>Load</em> button.
 
128
      </p>
 
129
    <image file="app_win">
 
130
      <icaption>The Application Window.</icaption>
 
131
    </image>
 
132
    <p>The application can be shown either as a strict supervision tree, or as a process view with all linked processes. In supervision mode, the tree-gathering and -building algorithm assumes conformance to the OTP design principles.</p>
 
133
 
 
134
    <section>
 
135
      <title>The File Menu</title>
 
136
      <taglist>
 
137
        <tag><em>Close</em></tag>
 
138
        <item>Close the application window.</item>
 
139
      </taglist>
 
140
    </section>
 
141
 
 
142
    <section>
 
143
      <title>The Options Menu</title>
 
144
      <taglist>
 
145
        <tag><em>Refresh</em></tag>
 
146
        <item>Refresh the application window.</item>
 
147
        <tag><em>Sup. view/ Proc. view</em></tag>
 
148
        <item>Select one of these radio buttons to show the application as a strict supervision tree, or as a process view with all linked processes. By default, the process view is used.</item>
 
149
      </taglist>
 
150
    </section>
 
151
 
 
152
    <section>
 
153
      <title>The Toolbar</title>
 
154
      <p>The toolbar consists of four buttons: <em>Info</em>, <em>Send</em>, <em>Trace</em> and <em>Kill</em>. First select one of these buttons and then select to which process the action should apply by clicking on a process in the process tree. By default <em>Info</em> is selected which means that clicking on a process, without selecting <em>Send</em>, <em>Trace</em> or <em>Kill</em> first, will open the <seealso marker="#pinfo_win">process information window</seealso>.</p>
 
155
      <taglist>
 
156
        <tag><em>Info</em></tag>
 
157
        <item>Open the <seealso marker="#pinfo_win">process information window</seealso>, which displays the information about the process given by <c><![CDATA[process_info(Pid)]]></c>.</item>
 
158
        <tag><em>Send</em></tag>
 
159
        <item>Send a message to a process. A window is opened where the message can be specified. Click <em>Ok</em> to send the message or <em>Cancel</em> to cancel.</item>
 
160
        <tag><em>Trace</em></tag>
 
161
        <item>Switch on OTP tracing of a process. <c><![CDATA[sys:trace(Pid,true)]]></c> is called. Selecting <em>Trace</em> a second time for the same process will switch the tracing off instead.</item>
 
162
        <tag><em>Kill</em></tag>
 
163
        <item>Kill a process. <c><![CDATA[exit(Pid,kill)]]></c> is called.</item>
 
164
      </taglist>
 
165
    </section>
 
166
  </section>
 
167
 
 
168
  <section>
 
169
    <title>The Listbox Window</title>
 
170
    <marker id="listbox_win"></marker>
 
171
    <p>The listbox window lists all nodes and applications. This window can be more easy to use than the normal, graphical user interface when the system consists of a large number of nodes and/or applications.</p>
 
172
    <image file="listbox_win">
 
173
      <icaption>The Listbox Window.</icaption>
 
174
    </image>
 
175
    <p>The window contains three buttons:</p>
 
176
    <taglist>
 
177
      <tag><em>Load</em></tag>
 
178
      <item>First selecting an application and then clicking the <em>Load</em> button will open the <seealso marker="#app_win">application window</seealso> for that application.</item>
 
179
      <tag><em>Clear</em></tag>
 
180
      <item>De-select any selected node or application name.</item>
 
181
      <tag><em>Close</em></tag>
 
182
      <item>Close the listbox window.</item>
 
183
    </taglist>
 
184
  </section>
 
185
 
 
186
  <section>
 
187
    <title>The Process Information Window</title>
 
188
    <marker id="pinfo_win"></marker>
 
189
    <p>The process information window shows information about different processes as given by <c><![CDATA[process_info(Pid)]]></c>.</p>
 
190
    <image file="pinfo_win">
 
191
      <icaption>The Process Information Window.</icaption>
 
192
    </image>
 
193
 
 
194
    <section>
 
195
      <title>The File Menu</title>
 
196
      <taglist>
 
197
        <tag><em>Close</em></tag>
 
198
        <item>Close the process information window.</item>
 
199
      </taglist>
 
200
    </section>
 
201
  </section>
 
202
 
 
203
  <section>
 
204
    <title>Using the Web Based version of Appmon</title>
 
205
 
 
206
    <section>
 
207
      <title>Introduction</title>
 
208
      <p>The web based version of Appmon is an alternative version of 
 
209
        Appmon. The main difference between the web based version of
 
210
        Appmon and the original version of Appmon is that the web based
 
211
        version of Appmon can monitor nodes and applications on nodes where
 
212
        Appmon not is installed.</p>
 
213
    </section>
 
214
 
 
215
    <section>
 
216
      <title>Start the Web Based version of Appmon</title>
 
217
      <p>To start the web based user interface configure and start 
 
218
        WebTool, see <em>WebTool User's Guide</em>. The web based 
 
219
        version of Appmon is compatible with the browsers 
 
220
        Netscape Navigator and Internet Explorer 4.0 and higher.</p>
 
221
      <p>When WebTool is started, start the Web based version of Appmon via 
 
222
        WebTool. If WebTool succeded to start the web based version of Appmon 
 
223
        a link named WebAppmon will appear in the topmost frame. Click on the link and
 
224
        the main frame of the browser will show two frames.The left frame will 
 
225
        show a combo box for node selection and a list of all applications on 
 
226
        the currently selected node.   </p>
 
227
      <p>In the left frame it is possible to:</p>
 
228
      <list type="bulleted">
 
229
        <item>Select which node to supervise.</item>
 
230
        <item>Select an application to view it's process tree.</item>
 
231
        <item>Select an application to view it's specification.</item>
 
232
      </list>
 
233
      <p>The right frame shows the selected information, either the application 
 
234
        specification or the process tree and process information.</p>
 
235
    </section>
 
236
 
 
237
    <section>
 
238
      <title>Selecting a Different Node</title>
 
239
      <p>In the top of the left frame there is a combo box with all known 
 
240
        nodes. The name of the node that is monitored is the node whose name 
 
241
        is visible in the combo box. At startup the node on which the web 
 
242
        based version of Appmon is running on will be monitored.</p>
 
243
      <p>To change node, select another node in the combo box, and
 
244
        the list of running applications will change to the applications
 
245
        that runs on the selected node.</p>
 
246
    </section>
 
247
 
 
248
    <section>
 
249
      <title>Viewing the Process Tree of an Application</title>
 
250
      <p>To view the process tree of an application click on the application 
 
251
        name in the list of applications. The process tree of the selected 
 
252
        application will then appear in the right frame.</p>
 
253
      <p>The processes in the process tree can have three different colors:</p>
 
254
      <taglist>
 
255
        <tag><em>Blue</em></tag>
 
256
        <item>The relation to the process above in the process heirarchy 
 
257
         is a primary relation. That means that the process above is the
 
258
         only process that link to it or the process above is a supervisor. </item>
 
259
        <tag><em>Red</em></tag>
 
260
        <item>The relation to the process above in the process heirarchy is a secondary 
 
261
         relation. This means that more than one process has a relation to it 
 
262
         and the process above in the heirarchy is not a supervisor.</item>
 
263
        <tag><em>Black</em></tag>
 
264
        <item>The process isn't a regular process instead it's a Port. The name of 
 
265
         the process will also begin with <em>Port:</em></item>
 
266
      </taglist>
 
267
      <p>If the process name begins with <em>Runs on another node:</em> The 
 
268
        monitored application runs on more than one node and this process is 
 
269
        the first process on a branch that runs on another node. </p>
 
270
    </section>
 
271
 
 
272
    <section>
 
273
      <title>Viewing the Application Specification</title>
 
274
      <p>After the application name in the list of applications there are a 
 
275
        link named <em>Spec</em>, Click on this link and the application 
 
276
        specification will appear in the right frame. The application 
 
277
        specification is the data in the <em>.app</em> file of the selected
 
278
        application. </p>
 
279
    </section>
 
280
 
 
281
    <section>
 
282
      <title>Select Process View</title>
 
283
      <p>In the top of the page that shows the process tree, there are three 
 
284
        radio buttons for selecting which processes that shall be included 
 
285
        in the process tree. The default mode is that all processes 
 
286
        that one process in the application tree  has a relation to is 
 
287
        included. It's possible to filter which of the processes 
 
288
        in the process tree that will be included. To reduce the number 
 
289
        of processes in the process tree select one of the radio buttons 
 
290
        on the top of the page </p>
 
291
      <taglist>
 
292
        <tag><em>All processes</em></tag>
 
293
        <item>All processes that at least one process in the application 
 
294
         tree has a link to.</item>
 
295
        <tag><em>Supervised processes</em></tag>
 
296
        <item>All procesess that is supervised by one of the supervisors in 
 
297
         the application</item>
 
298
        <tag><em>Supervisors only</em></tag>
 
299
        <item>Only the processes that actually is supervisors in the 
 
300
         applications supervision tree is included</item>
 
301
      </taglist>
 
302
    </section>
 
303
 
 
304
    <section>
 
305
      <marker id="proc_info"></marker>
 
306
      <title>Process Information</title>
 
307
      <p>To see more information about a specific process  click on the process
 
308
        name and more information will be loaded under the application tree.</p>
 
309
      <p>The Process information page shows information about a process as given 
 
310
        by the <c><![CDATA[process_info(Pid)]]></c>, but formatted in a more human readable form.</p>
 
311
    </section>
 
312
 
 
313
    <section>
 
314
      <title>Trace a process</title>
 
315
      <p>If the link after the process name in the process tree is <em>start trace</em>
 
316
        the process is not traced. If the link is <em>stop trace</em> then the process
 
317
        id traced.</p>
 
318
      <p>To toggle the trace flag for a process click on the link <em>start trace</em> or
 
319
        <em>stop trace</em> after the process name in the process tree.</p>
 
320
    </section>
 
321
  </section>
 
322
</chapter>
 
323