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.
  • Constructor Details

    • PacctParser

      public PacctParser()
  • Method Details

    • 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 for
      forkMap - fork map
      Returns:
      a list of parent PIDs