diff --git a/plugins/processes/proc_mem_by_user b/plugins/processes/proc_mem_by_user new file mode 100644 index 00000000..5e763288 --- /dev/null +++ b/plugins/processes/proc_mem_by_user @@ -0,0 +1,42 @@ +#!/bin/sh +# +# (c) 2014, Gilles Fauvie +# Based on the 'du_multidirs' plugin, written by Christian Kujau +# +# Configure it by using the processes env var, i.e.: +# +# WARNING: SELINUX can block this plugin +# +# [proc_mem_by_user] +# env.users munin-node jprod +# + +. $MUNIN_LIBDIR/plugins/plugin.sh + +if [ "$1" = "autoconf" ]; then + echo yes + exit 0 +fi + +users=${users:="munin-node"} + +if [ "$1" = "config" ]; then + echo 'graph_title Memory usage by process by user' + echo 'graph_args --base 1024 -l 0' + echo 'graph_vlabel Bytes' + echo 'graph_category processes' + echo 'graph_info This graph shows the memory usage of several processes of one user' + + for user in $users; do + echo "$user.label $user" + done + +# echo "$u".warning 0 +# echo "$u".critical 0 + + exit 0 +fi + +for user in $users; do + echo "$user.value " `ps u -U $user | awk 'BEGIN { sum = 0 } NR > 1 { sum += $6 }; END { print sum * 1024 }'` +done \ No newline at end of file