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.