updated codepot-mon-httpd
This commit is contained in:
parent
5b78418e74
commit
ab7156eb67
@ -11,7 +11,8 @@ THRESHOLD=1024
|
|||||||
|
|
||||||
if [ "$1" = "-daemon" ]
|
if [ "$1" = "-daemon" ]
|
||||||
then
|
then
|
||||||
($0 --daemon </dev/null >/dev/null 2>&1 &) &
|
shift
|
||||||
|
($0 --daemon $@ </dev/null >/dev/null 2>&1 &) &
|
||||||
#($0 --daemon &) &
|
#($0 --daemon &) &
|
||||||
exit 0
|
exit 0
|
||||||
elif [ "$1" = "--daemon" ]
|
elif [ "$1" = "--daemon" ]
|
||||||
@ -19,41 +20,46 @@ then
|
|||||||
DAEMON=1
|
DAEMON=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
[ -n "$2" ] && THRESHOLD="$2"
|
||||||
|
|
||||||
exit_requested=no
|
exit_requested=no
|
||||||
|
|
||||||
trap 'exit_requested=yes' SIGINT SIGHUP SIGTERM
|
trap 'exit_requested=yes' SIGINT SIGHUP SIGTERM
|
||||||
|
|
||||||
[ "${DAEMON}" = "1" ] && logger -t "$0" "Started"
|
[ "${DAEMON}" = "1" ] && logger -t "$0" "Started (THRESHOLD=$THRESHOLD)"
|
||||||
|
|
||||||
while [ "${exit_requested}" = "no" ]
|
while [ "${exit_requested}" = "no" ]
|
||||||
do
|
do
|
||||||
sleep 5
|
sleep 5
|
||||||
|
|
||||||
ps -ylC httpd | awk -vdaemon=$DAEMON -v"self=$0" -vthreshold=$THRESHOLD '
|
ps -ylC httpd | awk -vdaemon=$DAEMON -v"self=$0" -vthreshold=$THRESHOLD '
|
||||||
{
|
/httpd/ {
|
||||||
x += $8;
|
x += $8;
|
||||||
y += 1;
|
y += 1;
|
||||||
}
|
}
|
||||||
END {
|
END {
|
||||||
MB = x / 1024;
|
if (y > 0)
|
||||||
AVGMB = x / ((y - 1) * 1024);
|
|
||||||
|
|
||||||
if (daemon <= 0)
|
|
||||||
{
|
{
|
||||||
print "Apache Memory Usage (MB): " MB;
|
MB = x / 1024;
|
||||||
print "Average Proccess Size (MB): " AVGMB;
|
AVGMB = x / (y * 1024);
|
||||||
|
|
||||||
if (MB > int(threshold))
|
if (daemon <= 0)
|
||||||
{
|
{
|
||||||
system ("/etc/init.d/httpd restart");
|
print "Apache Memory Usage (MB): " MB;
|
||||||
|
print "Average Proccess Size (MB): " AVGMB;
|
||||||
|
|
||||||
|
if (MB > int(threshold))
|
||||||
|
{
|
||||||
|
system ("/etc/init.d/httpd restart");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
else
|
||||||
else
|
|
||||||
{
|
|
||||||
if (MB > int(threshold))
|
|
||||||
{
|
{
|
||||||
system (sprintf ("logger -t \"%s\" \"Restarting httpd for excess memory usage [%s/%d]\"", self, MB, threshold));
|
if (MB > int(threshold))
|
||||||
system ("/etc/init.d/httpd restart >/dev/null 2>&1 </dev/null");
|
{
|
||||||
|
system (sprintf ("logger -t \"%s\" \"Restarting httpd for excess memory usage [%s/%d]\"", self, MB, threshold));
|
||||||
|
system ("/etc/init.d/httpd restart >/dev/null 2>&1 </dev/null");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user