Run web.py as daemon.

Posted by mamcx on Stack Overflow See other posts from Stack Overflow or by mamcx
Published on 2009-07-07T16:51:24Z Indexed on 2010/05/13 16:04 UTC
Read the original article Hit count: 375

Filed under:
|

I have a simple web.py program to load data. In the server I don't want to install apache or any webserver.

I try to put it as a background service with http://www.jejik.com/articles/2007/02/a_simple_unix_linux_daemon_in_python/

And subclassing: (from http://www.jejik.com/files/examples/daemon.py)

class Daemon:
    def start(self):
    	"""
    	Start the daemon
    	"""
    	... PID CHECKS....

    	# Start the daemon
    	self.daemonize()
    	self.run()
#My code
class WebService(Daemon):
        def run(self):
            app.run()

if __name__ == "__main__":
    if DEBUG:
        app.run()
    else:
        service = WebService(os.path.join(DIR_ACTUAL,'ElAdministrador.pid'))
        if len(sys.argv) == 2:
        	if 'start' == sys.argv[1]:
        		service.start()
        	elif 'stop' == sys.argv[1]:
        		service.stop()
        	elif 'restart' == sys.argv[1]:
        		service.restart()
        	else:
        		print "Unknown command"
        		sys.exit(2)
        	sys.exit(0)
        else:
        	print "usage: %s start|stop|restart" % sys.argv[0]
        	sys.exit(2)

However, the web.py software not load (ie: The service no listen)

If I call it directly (ie: No using the daemon code) work fine.

© Stack Overflow or respective owner

Related posts about python

Related posts about backgroundworker