Plog is a process logger for use with Linux. It consists of two parts, a daemon server that runs in the background and does the actual logging (plogsrvd) and a command line client that sends requests to the daemon.

sh> plogsrvd -v
04-28 12:20 Plogsrvd started, pid 3574, using /var/local/plog
sh> plog -p 3574 -i 15
Log file: /var/local/plog/plogsrvd.3574

Above the daemon is being told to monitor itself at an interval of every 15 minutes, and it replies with the full path to the log file. There is no limit to the number of processes a single plogsrvd may monitor. The per process log files have the following format:

sh> cat /var/local/plog/plogsrvd.3574
plogsrvd -v
Date   Time  CPU_time #th  Virtual Resident Share      PSS Dat+Stck Prv&Writ  Minor Major
04-28 12:21        0s   1    6.24M    1692k 96.5%     144k     260k     256k     94     0
04-28 12:36        0s   1    6.24M    1692k 96.5%     160k     260k     256k     99     0
04-28 12:51        0s   1    6.24M    1692k 96.5%     160k     260k     256k     99     0

The first line is the command used to launch the process. The stats are taken from the procfs kernel interface; some of them may be familiar from programs such as top. Plog itself is very low profile and depends only on the standard C library. It is intended for use monitoring persistent processes over a period of hours, days, or weeks.

Logs go into the runtime directory of the plogsrvd; this may be specified on the command line. There may be multiple plogsrvds running simultaneously, but only one per runtime directory.


For more information, see the manual pages, plogsrvd(1), and plog(1).


This is the second public release, April/2017. The previous release was 2011.


The package requires gzip, tar, make and gcc to install. Plog is distributed under the terms of the GNU General Public License, version 3.