CC-4974: Watchdog for ensuring Liquidsoap does not consume more than 1GB of memory

-changed to 600MB for now. May lower even more later
This commit is contained in:
Martin Konecny 2013-02-26 14:47:48 -05:00
parent 15f2533225
commit fbaba59dca
4 changed files with 17 additions and 5 deletions

View File

@ -6,7 +6,7 @@ virtualenv_bin="/usr/lib/airtime/airtime_virtualenv/bin/"
ls_user="pypo"
export HOME="/var/tmp/airtime/pypo/"
api_client_path="/usr/lib/airtime/"
ls_path="/usr/bin/airtime-liquidsoap --verbose -f"
ls_path="/usr/bin/airtime-liquidsoap --verbose -f -d"
ls_param="/usr/lib/airtime/pypo/bin/liquidsoap_scripts/ls_script.liq"
exec 2>&1

View File

@ -20,8 +20,11 @@ start () {
chown pypo:pypo /var/log/airtime/pypo
chown pypo:pypo /var/log/airtime/pypo-liquidsoap
start-stop-daemon --start --background --quiet --chuid $USERID:$GROUPID \
--nicelevel -15 --make-pidfile --pidfile $PIDFILE --startas $DAEMON
touch /var/run/airtime-liquidsoap.pid
chown pypo:pypo /var/run/airtime-liquidsoap.pid
start-stop-daemon --start --quiet --chuid $USERID:$GROUPID \
--pidfile /var/run/airtime-liquidsoap.pid --nicelevel -15 --startas $DAEMON
monit monitor airtime-liquidsoap >/dev/null 2>&1
}

View File

@ -1,10 +1,12 @@
%include "library/pervasives.liq"
%include "/etc/airtime/liquidsoap.cfg"
set("log.file.path", log_file)
set("log.stdout", true)
set("server.telnet", true)
set("server.telnet.port", 1234)
set("init.daemon.pidfile.path", "/var/run/airtime-liquidsoap.pid")
%include "library/pervasives.liq"
#Dynamic source list
#dyn_sources = ref []

View File

@ -1,4 +1,4 @@
set daemon 10 # Poll at 5 second intervals
set daemon 15 # Poll at 5 second intervals
set logfile /var/log/monit.log
set httpd port 2812
@ -7,3 +7,10 @@
with pidfile "/var/run/airtime-liquidsoap.pid"
start program = "/etc/init.d/airtime-liquidsoap start" with timeout 5 seconds
stop program = "/etc/init.d/airtime-liquidsoap stop"
if mem > 600 MB for 3 cycles then restart
if failed host localhost port 1234
send "version\r\nexit\r\n"
expect "Liquidsoap"
retry 3
then restart