org.bootchart.parser.linux
Class PacctParser
java.lang.Object
org.bootchart.parser.linux.PacctParser
public class PacctParser
- extends Object
PacctParser parses the BSD process accounting v3 files. The accounting
file contains information about process creation times, PIDs, PPIDs etc.
It is used to get detailed information about process forks, filling in any
dependency blanks caused by the polling nature of
/proc/[PID]/top
logging.
Method Summary |
static List |
getPPIDs(int pid,
Map forkMap)
Returns a list of all parent PIDs (parent, grandparent, etc.) for the
specified PID. |
static Map |
parseLog(InputStream is)
Parses the pacct accounting file. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PacctParser
public PacctParser()
parseLog
public static Map parseLog(InputStream is)
throws IOException
- Parses the
pacct
accounting file. See
include/linux/acct.h
for format.
- Parameters:
is
- the input stream to parse
- Returns:
- a map of Integer to Integer forks
- Throws:
IOException
- if an I/O error occurs
getPPIDs
public static List getPPIDs(int pid,
Map forkMap)
- Returns a list of all parent PIDs (parent, grandparent, etc.) for the
specified PID.
- Parameters:
pid
- the PID to get the PPIDs forforkMap
- fork map
- Returns:
- a list of parent PIDs