3 cpu_apps_apps="netdata asterisk squid apache2 mysqld dovecot cupsd sshd named clamd smbd"
5 # these are required for computing memory in bytes and cpu in seconds
6 #cpu_apps_pagesize="`getconf PAGESIZE`"
7 cpu_apps_clockticks="`getconf CLK_TCK`"
11 # - 0 to enable the chart
12 # - 1 to disable the chart
14 if [ -z "$cpu_apps_apps" ]
16 echo >&2 "cpu_apps: Please set cpu_apps_apps='command1 command2 ...' in $confd/cpu_apps_apps.conf"
26 echo "CHART apps.cpu '' 'Apps CPU' 'milliseconds/s' apps apps stacked 20001 $update_every"
29 for x in $cpu_apps_apps
31 echo "DIMENSION $x $x incremental 1000 $cpu_apps_clockticks"
33 # this string is needed later in the update() function
34 # to finalize the instructions for the bc command
35 cpu_apps_bc_finalze="$cpu_apps_bc_finalze \"SET $x = \"; $x;"
41 # do all the work to collect / calculate the values
43 # remember: KEEP IT SIMPLE AND SHORT
46 ps -o pid,comm -C "$cpu_apps_apps" |\
51 echo "$name+=`cat /proc/$pid/stat | cut -d ' ' -f 14-15`"
54 ( sed -e "s/ \+/ /g" -e "s/ /+/g";
55 echo "$cpu_apps_bc_finalze"