summaryrefslogtreecommitdiff
path: root/src/pmdas/linux_proc/help
diff options
context:
space:
mode:
Diffstat (limited to 'src/pmdas/linux_proc/help')
-rw-r--r--src/pmdas/linux_proc/help220
1 files changed, 220 insertions, 0 deletions
diff --git a/src/pmdas/linux_proc/help b/src/pmdas/linux_proc/help
new file mode 100644
index 0000000..6640a08
--- /dev/null
+++ b/src/pmdas/linux_proc/help
@@ -0,0 +1,220 @@
+#
+# Copyright (c) 2000,2004-2008 Silicon Graphics, Inc. All Rights Reserved.
+# Portions Copyright (c) International Business Machines Corp., 2002
+# Portions Copyright (c) 2007-2009 Aconex. All Rights Reserved.
+# Portions Copyright (c) 2013 Red Hat.
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# Linux proc PMDA help file in the ASCII format
+#
+# lines beginning with a # are ignored
+# lines beginning @ introduce a new entry of the form
+# @ metric_name oneline-text
+# help test goes
+# here over multiple lines
+# ...
+#
+# the metric_name is decoded against the default PMNS -- as a special case,
+# a name of the form NNN.MM (for numeric NNN and MM) is interpreted as an
+# instance domain identification, and the text describes the instance domain
+#
+# blank lines before the @ line are ignored
+#
+
+@ cgroup.subsys.hierarchy subsystem hierarchy from /proc/cgroups
+@ cgroup.subsys.count count of known subsystems in /proc/cgroups
+@ cgroup.mounts.subsys mount points for each cgroup subsystem
+@ cgroup.mounts.count count of cgroup filesystem mount points
+
+@ proc.nprocs instantaneous number of processes
+@ proc.psinfo.pid process identifier
+@ proc.psinfo.psargs full command string
+@ proc.psinfo.cmd command name
+@ proc.psinfo.sname process state identifier (see ps(1)). See also proc.runq metrics.
+@ proc.psinfo.ppid parent process identifier
+@ proc.psinfo.pgrp process group identifier
+@ proc.psinfo.session process session identifier
+@ proc.psinfo.tty controlling tty device number (zero if none)
+@ proc.psinfo.tty_pgrp controlling tty process group identifier
+@ proc.psinfo.flags process state flags, as a bitmap
+@ proc.psinfo.minflt count of minor page faults (i.e. reclaims)
+@ proc.psinfo.cmin_flt count of minor page faults (i.e. reclaims) of all exited children
+@ proc.psinfo.maj_flt count of page faults other than reclaims
+@ proc.psinfo.cmaj_flt count of page faults other than reclaims of all exited children
+@ proc.psinfo.utime time (in ms) spent executing user code since process started
+@ proc.psinfo.stime time (in ms) spent executing system code (calls) since process started
+@ proc.psinfo.cutime time (in ms) spent executing user code of all exited children
+@ proc.psinfo.cstime time (in ms) spent executing system code of all exited children
+@ proc.psinfo.priority priority value
+@ proc.psinfo.nice process nice value (negative nice values are lower priority)
+@ proc.psinfo.it_real_value current interval timer value (zero if none)
+@ proc.psinfo.start_time start time of the process relative to system boot time in seconds
+@ proc.psinfo.vsize virtual size of the process in Kbytes
+@ proc.psinfo.rss resident set size (i.e. physical memory) of the process
+@ proc.psinfo.rss_rlim limit on resident set size of process
+@ proc.psinfo.start_code address of the start of the code segment for the process
+@ proc.psinfo.end_code address of the end of the code segment for the process
+@ proc.psinfo.start_stack address of the stack segment for the process
+@ proc.psinfo.esp the value in the esp field of struct task_struct for the process
+@ proc.psinfo.eip the value in the eip field of struct task_struct for the process
+@ proc.psinfo.signal the value in the signal field of struct task_struct for the process
+@ proc.psinfo.blocked the value in the blocked field of struct task_struct for the process
+@ proc.psinfo.sigignore the value in the sigignore field of struct task_struct for the process
+@ proc.psinfo.sigcatch the value in the sigcatch field of struct task_struct for the process
+@ proc.psinfo.wchan wait channel, kernel address this process is blocked or sleeping on
+@ proc.psinfo.nswap count of page swap operations
+@ proc.psinfo.cnswap count of page swap operations of all exited children
+@ proc.psinfo.exit_signal the value in the exit_signal field of struct task_struct for the process
+@ proc.psinfo.ttyname name of controlling tty device, or "?" if none. See also proc.psinfo.tty.
+@ proc.psinfo.processor last CPU the process was running on
+@ proc.psinfo.wchan_s name of an event for which the process is sleeping (if blank, the process is running).
+This field needs access to a namelist file for proper
+address-to-symbol name translation. If no namelist file
+is available, the address is printed instead. The namelist
+file must match the current Linux kernel exactly.
+The search path for the namelist file is as follows:
+ /boot/System.map-`uname -r`
+ /boot/System.map
+ /lib/modules/`uname -r`/System.map
+ /usr/src/linux/System.map
+ /System.map
+@ proc.psinfo.signal_s pending signals mask in string form (from /proc/<pid>/status)
+@ proc.psinfo.blocked_s blocked signals mask in string form (from /proc/<pid>/status)
+@ proc.psinfo.sigignore_s ignored signals mask in string form (from /proc/<pid>/status)
+@ proc.psinfo.sigcatch_s caught signals mask in string form (from /proc/<pid>/status)
+@ proc.psinfo.threads number of threads (from /proc/<pid>/status)
+@ proc.psinfo.cgroups list of processes cgroups (from /proc/<pid>/cgroup)
+@ proc.psinfo.labels list of processes security labels (from /proc/<pid>/attr/current)
+@ proc.memory.size instantaneous virtual size of process, excluding page table and task structure.
+@ proc.memory.rss instantaneous resident size of process, excluding page table and task structure.
+@ proc.memory.share instantaneous amount of memory shared by this process with other processes
+@ proc.memory.textrss instantaneous resident size of process code segment in Kbytes
+@ proc.memory.librss instantaneous resident size of library code mapped by the process, in Kbytes
+@ proc.memory.datrss instantaneous resident size of process data segment, in Kbytes
+@ proc.memory.dirty instantaneous amount of memory that has been modified by the process, in Kbytes
+@ proc.memory.maps table of memory mapped by process in string form from /proc/<pid>/maps
+@ proc.memory.vmsize total virtual memory (from /proc/<pid>/status)
+@ proc.memory.vmlock locked virtual memory (from /proc/<pid>/status)
+@ proc.memory.vmrss resident virtual memory (from /proc/<pid>/status)
+@ proc.memory.vmdata virtual memory used for data (from /proc/<pid>/status)
+@ proc.memory.vmstack virtual memory used for stack (from /proc/<pid>/status)
+@ proc.memory.vmexe virtual memory used for non-library executable code (from /proc/<pid>/status)
+@ proc.memory.vmlib virtual memory used for libraries (from /proc/<pid>/status)
+@ proc.memory.vmswap virtual memory that has been brought in and out.
+@ proc.id.uid real user ID from /proc/<pid>/status
+@ proc.id.euid effective user ID from /proc/<pid>/status
+@ proc.id.suid saved user ID from /proc/<pid>/status
+@ proc.id.fsuid filesystem user ID from /proc/<pid>/status
+@ proc.id.gid real group ID from /proc/<pid>/status
+@ proc.id.egid effective group ID from /proc/<pid>/status
+@ proc.id.sgid saved group ID from /proc/<pid>/status
+@ proc.id.fsgid filesystem group ID from /proc/<pid>/status
+@ proc.id.uid_nm real user name based on real user ID from /proc/<pid>/status
+@ proc.id.euid_nm effective user name based on effective user ID from /proc/<pid>/status
+@ proc.id.suid_nm saved user name based on saved user ID from /proc/<pid>/status
+@ proc.id.fsuid_nm filesystem user name based on filesystem user ID from /proc/<pid>/status
+@ proc.id.gid_nm real group name based on real group ID from /proc/<pid>/status
+@ proc.id.egid_nm effective group name based on effective group ID from /proc/<pid>/status
+@ proc.id.sgid_nm saved group name based on saved group ID from /proc/<pid>/status
+@ proc.id.fsgid_nm filesystem group name based on filesystem group ID from /proc/<pid>/status
+
+@ proc.runq.runnable number of runnable (on run queue) processes
+Instantaneous number of runnable (on run queue) processes, state 'R' in ps
+@ proc.runq.blocked number of processes in uninterruptible sleep
+Instantaneous number of processes in uninterruptible sleep, state 'D' in ps
+@ proc.runq.sleeping number of processes sleeping
+Instantaneous number of processes sleeping, state 'S' in ps
+@ proc.runq.stopped number of traced, stopped or suspended processes
+Instantaneous number of traced, stopped or suspended processes, state
+'T' in ps
+@ proc.runq.swapped number of processes that are swapped
+Instantaneous number of processes (excluding kernel threads) that are
+swapped, state 'SW' in ps
+@ proc.runq.defunct number of defunct/zombie processes
+Instantaneous number of defunct/zombie processes, state 'Z' in ps
+@ proc.runq.unknown number of processes is an unknown state
+Instantaneous number of processes is an unknown state, including all
+kernel threads
+@ proc.runq.kernel number of kernel threads
+Instantaneous number of processes with virtual size of zero (kernel threads)
+
+@ proc.io.rchar read(), readv() and sendfile() receive bytes
+Extended accounting information - count of the number of bytes that
+have passed over the read(2), readv(2) and sendfile(2) syscalls by
+each process.
+
+@ proc.io.wchar write(), writev() and sendfile() send bytes
+Extended accounting information - count of the number of bytes that
+have passed over the write(2), writev(2) and sendfile(2) syscalls by
+each process.
+
+@ proc.io.syscr read(), readv() and sendfile() receive system calls
+Extended accounting information - count of number of calls to the
+read(2), readv(2) and sendfile(2) syscalls by each process.
+
+@ proc.io.syscw write(), writev() and sendfile() send system calls
+Extended accounting information - count of number of calls to the
+write(2), writev(2) and sendfile(2) syscalls by each process.
+
+@ proc.io.read_bytes physical device read bytes
+Number of bytes physically read on by devices on behalf of this process.
+@ proc.io.write_bytes physical device write bytes
+Number of bytes physically written to devices on behalf of this process.
+This must be reduced by any truncated I/O (proc.io.cancelled_write_bytes).
+@ proc.io.cancelled_write_bytes physical device write cancelled bytes
+Number of bytes cancelled via truncate by this process. Actual physical
+writes for an individual process can be calculated as:
+ proc.io.write_bytes - proc.io.cancelled_write_bytes.
+
+@ proc.schedstat.cpu_time runnable (scheduled) + run time
+Length of time in nanoseconds that a process has been running, including
+scheduling time.
+@ proc.schedstat.run_delay run queue time
+Length of time in nanoseconds that a process spent waiting to be scheduled
+to run in the run queue.
+@ proc.schedstat.pcount number of times a process is allowed to run
+Number of times a process has been scheduled to run on a CPU (this is
+incremented when a task actually reaches a CPU to run on, not simply
+when it is added to the run queue).
+
+@ proc.fd.count open file descriptors
+Number of file descriptors this process has open.
+
+@ proc.control.all.threads process indom includes threads
+If set to one, the process instance domain as reported by pmdaproc
+contains all threads as well as the processes that started them.
+If set to zero, the process instance domain contains only processes.
+
+This setting is persistent for the life of pmdaproc and affects all
+client tools that request instances and values from pmdaproc.
+Use either pmstore(1) or pmStore(3) to modify this metric.
+
+@ proc.control.perclient.threads for a client, process indom includes threads
+If set to one, the process instance domain as reported by pmdaproc
+contains all threads as well as the processes that started them.
+If set to zero, the process instance domain contains only processes.
+
+This setting is only visible to the active client context. In other
+words, storing into this metric has no effect for other monitoring
+tools. See proc.control.all.threads, if that is the desired outcome.
+Only pmStore(3) can effectively set this metric (pmstore(1) cannot).
+
+@ proc.control.perclient.cgroups for a client, process indom reflects specific cgroups
+If set to the empty string (the default), the process instance domain
+as reported by pmdaproc contains all processes. However, a cgroup
+name (full path) can be stored into this metric in order to restrict
+processes reported to only those within the specified cgroup. This
+set is further affected by the value of proc.control.perclient.threads.
+
+This setting is only visible to the active client context. In other
+words, storing into this metric has no effect for other monitoring
+tools. pmStore(3) must be used to set this metric (not pmstore(1)).