diff options
Diffstat (limited to 'src/pmdas/linux_proc/help')
-rw-r--r-- | src/pmdas/linux_proc/help | 220 |
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)). |