From e2d565532d25024c1c0552d8eaaddf90eed88629 Mon Sep 17 00:00:00 2001
From: Siri Hansen The For Windows users, The The Crashdump Viewer is an HTML based tool for browsing Erlang
- crashdumps. Crashdump Viewer runs under the WebTool application. The Crashdump Viewer is a WxWidgets based tool for browsing Erlang
+ crashdumps. See the This function starts the This function starts the If This function stops the This function stops the Each menu item points to an information page. If no information
- is found for an item, the page will simply say "No information
- found". The reason for not finding any information about an item
- can be that the dump is truncated, that it is a dump from an old
- OTP release in which this item was not written or that the item
- simply wasn't present in the system at the point of failure.
-
- If the dump was truncated, a warning is displayed.
-
- Even if some information about an item exists, there might be
- empty fields if the dump originates from an old OTP release.
-
- The value "-1" in any field means "unknown", and in most cases
- it means that the dump was truncated somewhere around this field.
-
- Only some of the fields in the different information pages are
- described here. These are fields that to not exist in the raw
- crashdump, or in some way differs from the fields in the raw
- crashdump. Details about other field can be found in the user's
- guide for the Erlang runtime system, in the chapter "How to
- interpret the Erlang crash dumps". A link to this chapter can be
- found in the Crashdump Viewer's menu under documentation, and
- there are also direct links from the specific sections below to
- related information in "How to interpret the Erlang crash dumps".
-
-
- This is the first page shown when a new dump is loaded into
- the system. It shows a very short overview of the dump.
-
- 'Node name' will only exist in dumps originating from OTP R9C
- and later.
-
- The following fields are not described in the Erlang runtime
- system user's guide:
-
- The Process Information page shows a list of all processes
- found in the crashdump, including some short information about
- each process. By default the processes are sorted by their
- pids. To sort by other topic, click any heading in the process
- table.
-
- Detailed information about a specific process is shown when
- the pid is clicked.
-
- The port information page shows all port information found in
- the dump.
-
- The ETS table information page shows all ETS table
- information found in the dump. The 'Id' is the same as the
- 'Table' field found in the raw crashdump, and 'Memory' is the
- 'Words' field from the raw crashdump translated into
- bytes. 'Type' is the type of table, and it can be either "hash"
- or "tree". For tree tables there will be no value in the
- 'Bucket' field.
-
- Clicking a pid in the 'Owner' column takes you to the
- detailed information about the process owning the ETS table.
-
- The timer information page shows all timer information found
- in the dump.
-
- Clicking a pid in the 'Owner' column takes you to the
- detailed information about the process owning the timer.
-
- The Fun table information page shows all Fun information
- found in the dump. Fun information will only exist in dumps from
- OTP R8B or later.
-
- The atoms information page lists all atoms found in the
- dump. The last created atom is listed first.
-
- Note that if the dump is from OTP R8B or earlier, the raw
- dump lists the atoms in the opposite order and the Crashdump
- Viewer reverses them. This means that there is no problem if the
- dump is not truncated. However, if the dump is truncated, the
- last atoms might not be shown at all!!
-
- The distribution information page shows all distribution
- information found in the dump.
-
- If the page shows "Not alive", it means that the node was not
- distributed.
-
- It the node was distributed, all connected nodes are
- shown. Visible nodes are alive nodes with a living connection to
- the originating node. Hidden nodes are the same as visible
- nodes, except they are started with the "-hidden" flag. Not
- connected nodes are nodes that are not connected to the
- originating node anymore, but references (i.e. process or port
- identitifiers) exist.
-
- 'Links/Monitors' may contain information about links or
- monitors between processes on the originating node and the
- connected node.
-
- 'Extra Info' may contain debug information (i.e. special
- information written if the emulator is debug compiled) or error
- information.
-
- The loaded modules information page shows all modules that
- were loaded on the originating node, and the current size of the
- code. If old code exsits, the old size is also shown.
-
- Detailed information about a specific module is shown when
- the module name is clicked.
-
- Internal tables are shown in two information pages: hash
- tables and index tables.
-
- Memory information is divided into three pages.
-
- The first page, Memory, shows information
- similar to what you can obtain on a living node with
- The Allocated areas page shows information
- similar to what you can obtain on a living node with
- The Allocator information page shows
- information about allocators. The contents of the page will vary
- with the version.
- More...
-
- 'Crashdump Viewer help' is this document.
-
- 'How to interpret Erlang crashdumps' is a document from the
- Erlang runtime system describing details in the raw
- crashdumps. Here you will also find information about each
- single field in the different information pages.
-
- The Crashdump Viewer is an HTML based tool for browsing Erlang
- crashdumps. Crashdump Viewer runs under the WebTool application.
- The Crashdump Viewer is a WxWidgets based tool for browsing
+ Erlang crashdumps.
+ The easiest way to start Crashdump Viewer is to use the
provided shell script named The default browser is Internet Explorer on Windows, open on Mac OS X,
- or else Firefox. To use another browser, give the browser's start command
- as the second argument to
-
-Information pages
-
- General information
-
-
-
-
- c:memory(total)
. This will only be present in
- dumps from OTP R9C and later.Processes
-
- Ports
-
- ETS tables
-
- Timers
-
- Fun table
-
- Atoms
-
- Distribution information
-
- Loaded modules
-
- Internal tables
-
- Memory
-
- c:memory()
. This will only be present in dumps from
- OTP R9C and later.
- More...
-
- erlang:system_info(allocated_areas)
.
- More...
-
- Documentation
-
-
-
-
-Copyright © 1991-2003
-Ericsson Utvecklings AB
-
-
-
Under Windows the batch file
It is also possible to start the Crashdump Viewer from within
an erlang node by calling
Point your web browser to the address displayed, and you should - now see the start page of WebTool. At the top of the page, you - will see a link to "CrashDumpViewer". Click this link to get to - the start page for Crashdump Viewer. (Note that if webtool is on - localhost, you must configure your web browser to have direct - connection to the internet, or you must set no proxy for - localhost.) -
-From the start page of Crashdump Viewer, push the "Load
- Crashdump" button to load a crashdump into the tool. Then enter
- the filename of the crashdump in the entry field and push the
- "Ok" button. This will bring you to the General Information
- page, i.e. the same page as the
Crashdumps generated by OTP R9C and later are loaded directly
- into the Crashdump Viewer, while dumps from earlier releases first
- are translated by the Crashdump Translater. The Crashdump
- Translater creates a new file with the same name as the original
- crashdump, but with the extension
The lefthand frame contains a menu. Menu folders can be - expanded and collapsed by clicking the folder picture. When a menu - item is clicked, the item information is shown in the big - information frame. -
-The filename frame above the information frame shows the full - name of the currently viewed Erlang crashdump. -
-To load a new crashdump, click the "Load New Crashdump" button - in the menu frame. -
-The various information shown in the information frame will - contain links to process identifiers (PIDs) and port - identifiers. Clicking one of these links will take you to the - detailed information page for the process or port in question. Use - the "Back" button in your browser to get back to the - startingpoint. If the process or port resided on a remote node, - there will be no information available. Clicking the link will - then take you to the information about the remote node. -
+The main window is opened when Crashdump Viewer has loaded a + crashdump. It contains a title bar, a menu bar, a number of + information panels and a status bar.
+ +The title bar shows the name of the currently loaded + crashdump.
+ +The menu bar contains a File menu and a Help + menu. From the File menu a new crashdump can be loaded or the tool + can be terminated. From the Help menu this user's guide and the + chapter "How to interpret the Erlang crash dumps" from the user's + guide for Erlang runtime system can be opened. "How to interpret + the Erlang crash dumps" describes the raw crashdumps in + detail. Here you will also find information about each single + field in the different information pages. This document can also + be found directly in the OTP online documentation, via the Erlang + runtime system user's guide.
+ +The status bar at the bottom of the window will show a warning + if the currently loaded dump is truncated.
+ +The centre area of the main window contains the information + panels. Each panel displays information about a specific item or a + list of items. A panel is selected by clicking the title of the + tab.
+ +From panels that display lists of items, for example the + Processes- or the Ports panel, a new window with further + information can be opened by double clicking a row or by right + clicking the row and selecting an item from the drop down + menu. The new window is called a detail window. Detail windows can + be opened for processes, ports, nodes and modules.
+ +The various information shown in a detail window might contain + links to processes or ports. Clicking one of these links will open + the detail window for the process or port in question. If the + process or port resided on a remote node, there will be no + information available. Clicking the link will then pop up a dialog + where you can choose whether to open the detail window for the + remote node or not. +
+ +Some of the panels contain a left hand menu where sub items of + the panel's information area can be selected. Click on one of the + rows, and the information will be displayed in the right hand + information area.
Further help on how to use the Crashdump Viewer tool can be - found in the tool's menu under 'Documentation': -
-'Crashdump Viewer help' is a short document describing each - information page and any additional information that might occur, - compared to the raw dump described in 'How to interpret Erlang - crashdumps'. -
-'How to interpret Erlang crashdumps' is a document from the - Erlang runtime system describing details in the raw - crashdumps. Here you will also find information about each single - field in the different information pages. This document can also - be found directly in the OTP online documentation, via the Erlang - runtime system user's guide. -
+Each panel in the main window contains an information + page. If no information is found for an item, the page will be + empty. The reason for not finding any information about an item + can be that the dump is truncated, that it is a dump from an old + OTP release in which this item was not written or that the item + simply wasn't present in the system at the point of failure.
+ +If the dump was truncated, a warning is displayed in the + status bar of the main window.
+ +Even if some information about an item exists, there might be + empty fields if the dump originates from an old OTP release.
+ +The value "-1" in any field means "unknown", and in most + cases it means that the dump was truncated somewhere around this + field.
+ +The sections below describe some of the fields in the + different information panels. These are fields that do not exist + in the raw crashdump, or in some way differ from the fields in + the raw crashdump. Details about other fields can be found in + the user's guide for the Erlang runtime system, in the chapter + "How to interpret the Erlang crash dumps". That chapter can also + be opened from the Help menu in the Crashdump Viewer's main + window, and there are also direct links from the specific + sections below to related information in "How to interpret the + Erlang crash dumps".
The General information panel shows a short overview + of the dump.
+ +The following fields are not described in the Erlang runtime + system user's guide:
+ +
+
The Processes panel shows a list of all processes + found in the crashdump, including some short information about + each process. By default the processes are sorted by their + pids. To sort by other topic, click the desired column + heading.
+ +The Memory column shows the 'Memory' field which was + added to crashdumps in R16B01. This is the total amount of memory + used by the process. For crashdumps from earlier releases, this + column shows the 'Stack+heap' field. The value shown is always in + bytes.
+ +To view detailed information about a specific process, double + click the row in the list or right click the row and select + "Properties for <pid>".
+ +
+
The Ports panel is similar to the Processes + panel, except it lists all ports found in the crashdump.
+ +To see more details about a specific port, dobule click the row + or right click it and select "Properties for <port>". From + the right click menu you can also select "Properties for + <pid>", where <pid> is the process connected to the + port.
+ +
+
The ETS Tables panel shows all ETS table information + found in the dump. The 'Id' is the same as the 'Table' field found + in the raw crashdump, and 'Memory' is the 'Words' field from the + raw crashdump translated into bytes. 'Type' is the type of table, + and it can be either "hash" or "tree". For tree tables there will + be no value in the 'Bucket' field.
+ +To open the detailed information page about the owner process + of an ETS table, right click the row and select "Properties for + <pid>".
+ +Double clicking a row in the ETS Tables panel has no + effect.
+ +From the left hand menu you can also select to see internal ETS + tables.
+ +
+
The Timers panel shows all timer information found in + the dump.
+ +To open the detailed information page about the owner process + of a timer, right click the row and select "Properties for + <pid>".
+ +Double clicking a row in the Timers panel has no effect.
+ +
+
The Funs panel shows all Fun information found in the + dump.
+ +To open the detailed information page about the module to which + the fun belongs, right click the row and select "Properties for + <mod>".
+ +Double clicking a row in the Funs panel has no effect.
+ +
+
The Atoms panel lists all atoms found in the dump. By + default the atoms are sorted in creation order from first to + last. This is opposite of the raw crashdump where atoms are listed + from last to first, meaning that if the dump was truncated in the + middle of the atom list only the last created atoms will be seen + in the Atoms panel.
+ +
+
The Nodes panel shows a list of all external erlang + nodes which are referenced from the crashdump.
+ +If the page is empty it either means that the crashed node was + not distributed, that it was distributed but had no references to + other nodes or that the dump was truncated.
+ +If the node was distributed, all referenced nodes are
+ shown. The column named Connection type shows if the node
+ is visible, hidden or not connected. Visible nodes are alive nodes
+ with a living connection to the originating node. Hidden nodes are
+ the same as visible nodes, except they are started with the
+
To see more detailed information about a node, double click the + row or right click the row and select "Properties for node + <node>". From the right click menu you can also select + "Properties for <port>", to open the detailed information + window for the controlling port.
+ +In the detailed information window for a node, any exsisting + links and monitors between processes on the originating node and + the connected node are shown. Extra Info may contain + debug information (i.e. special information written if the + emulator is debug compiled) or error information.
+ +
+
The Modules panel lists all modules that were loaded + on the originating node, and the current size of the code. If old + code exsits, the old size is also shown.
+ +To see detailed information about a specific module, double + click the row or right click it and select "Properties for + <mod>".
+ +
+
The Memory panel shows memory and allocator + information. From the left hand menu you can select:
+ +
+
+
+
+
On the Internal Tables panel you can choose from the + left hand menu to see hash tables or index tables.
+ +
+