X-Git-Url: https://git.rvb.name/weathermon.git/blobdiff_plain/2b43b1c28e9ced6c475904604df1c99b78cd8a71..7580c60d80239c3a880e124c550c2353f8153d82:/bin/weathermon diff --git a/bin/weathermon b/bin/weathermon index 2314e1a..8da4696 100755 --- a/bin/weathermon +++ b/bin/weathermon @@ -1,6 +1,7 @@ #!/usr/bin/lua local json = require("json") +local signal = require("posix.signal") require "wm_util" @@ -307,6 +308,19 @@ end getConfig(arg[1]) +signal.signal(signal.SIGTERM, function(signum) + + printLog("Terminating...") + local pids = get_children() + for k,v in pairs(pids) do + printLog("Terminating subprocess "..tostring(v).."...") + signal.kill(v,signal.SIGTERM) + end + printLog("Exiting...") + os.exit(0) + +end) + if backlogdb or logdb then local dbdriver = require "luasql.sqlite3" env = assert(dbdriver.sqlite3())