900c14709d5145cd96a847902b5eef5f3974b403
				
			
			
		
	daemonize
daemonize is a library for writing system daemons in Python. It is distributed under MIT license. Latest version can be downloaded from PyPI. Full documentation can be found at ReadTheDocs.
Dependencies
It is tested under following Python versions:
- 2.6
- 2.7
- 3.3
- 3.4
- 3.5
Installation
You can install it from Python Package Index (PyPI):
$ pip install daemonizeUsage
from time import sleep
from daemonize import Daemonize
pid = "/tmp/test.pid"
def main():
    while True:
        sleep(5)
daemon = Daemonize(app="test_app", pid=pid, action=main)
daemon.start()File descriptors
Daemonize object's constructor understands the optional argument keep_fds which contains a list of FDs which should not be closed. For example:
import logging
from daemonize import Daemonize
pid = "/tmp/test.pid"
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
logger.propagate = False
fh = logging.FileHandler("/tmp/test.log", "w")
fh.setLevel(logging.DEBUG)
logger.addHandler(fh)
keep_fds = [fh.stream.fileno()]
def main():
    logger.debug("Test")
daemon = Daemonize(app="test_app", pid=pid, action=main, keep_fds=keep_fds)
daemon.start()Description
				
					Languages
				
				
								
								
									Python
								
								99.1%
							
						
							
								
								
									Makefile
								
								0.9%
							
						
					