Projet

Général

Profil

Paste
Télécharger au format
Statistiques
| Branche: | Révision:

root / plugins / memory / proc_memory_status @ 17f78427

Historique | Voir | Annoter | Télécharger (1,61 ko)

1 55401f04 Julien Francoz
#!/bin/sh
2
3
# Julien Francoz CoCoZ <julien@francoz.net>
4
5
# graph memory usage detail for a process using /proc/$PID/status
6
# create a link to this plugin with the syntax proc_yourprocessname_status
7
# example : proc_master_status pour postfix master process
8
9
cmd=`basename "$0"`
10
process=`echo "$cmd"| cut -d'_' -f 2`
11
pid=`pgrep -o -x "$process"`
12
#echo $pid
13
14
if [ "$1" = "autoconf" ]; then
15
	if [ -r /proc/$pid/status ]; then
16
		echo yes
17
		exit 0
18
	else
19
		echo no
20
		exit 1
21
	fi
22
fi
23
24
if [ "$1" = "config" ]; then
25
26
	echo "graph_title Memory usage for process $process"
27
	echo "graph_order VmExe VmLib VmStk VmData VmRSS VmSize"
28
	echo 'graph_vlabel Ko'
29
	echo 'graph_scale no'
30
	echo "graph_info This graph display memory usage for a process"
31 7fdb4741 dipohl
	echo 'graph_category processes'
32 55401f04 Julien Francoz
	echo 'graph_period second'
33
34
	echo 'VmExe.label VmExe'
35
	echo 'VmExe.draw AREA'
36 17f78427 Lars Kruse
	echo "VmExe.info The size of the executable segment"
37
38 55401f04 Julien Francoz
	echo 'VmLib.label VmLib'
39
	echo 'VmLib.draw STACK'
40
	echo 'VmLib.info The size of the library code'
41 17f78427 Lars Kruse
42 55401f04 Julien Francoz
	echo 'VmStk.label VmStk'
43
	echo 'VmStk.draw STACK'
44
	echo 'VmStk.info The stack size'
45 17f78427 Lars Kruse
46 55401f04 Julien Francoz
	echo 'VmLck.label VmLck'
47
	echo 'VmLck.draw STACK'
48
	echo 'VmLck.info The amount of locked memory'
49 17f78427 Lars Kruse
50 55401f04 Julien Francoz
	echo 'VmData.label VmData'
51
	echo 'VmData.draw STACK'
52
	echo 'VmData.info The size of the Data segment'
53 17f78427 Lars Kruse
54 55401f04 Julien Francoz
	echo 'VmRSS.label VmRSS'
55
	echo 'VmRSS.draw LINE2'
56
	echo 'VmRSS.info The amount of memory mapped in RAM ( instead of swapped out)'
57 17f78427 Lars Kruse
58 55401f04 Julien Francoz
	echo 'VmSize.label VmSize'
59
	echo 'VmSize.draw LINE2'
60
	echo 'VmSize.info The size of the virtual memory allocated to the process'
61
	exit 0
62
fi
63
64
cat /proc/$pid/status |grep -E '^Vm' | sed -e 's/:/.value/' -e 's/\s\+kB$//' -e 's/\s\+/ /'