Hallo Ich versuche, einen Daemon in Python auf einem Ubuntu-Server zu erstellen. Der folgende Code ist der Code, mit dem ich ein Problem habe.Python3 create Daemon
import sys
import time
import threading
import logging
import logging.handlers
from daemon import runner
class Main(object):
def run(self):
my_logger = logging.getLogger('NameGeneratorDeamon')
my_logger.setLevel(logging.DEBUG)
handler = logging.handlers.SysLogHandler(address=('192.168.0.69', 514),facility=LOG_DAEMON)
my_logger.addHandler(handler)
try:
my_logger.info('Started')
while True:
pass
except Exception as inst:
#Send error to syslog server
my_logger.critical(inst)
class App():
def __init__(self):
self.stdin_path = '/dev/null'
self.stdout_path = '/dev/null'
self.stderr_path = '/dev/null'
self.pidfile_path = '/tmp/foo.pid'
self.pidfile_timeout = 5
def run(self):
service = Main()
service.run()
app = App()
daemon_runner = runner.DaemonRunner(app)
daemon_runner.do_action()
Die Fehlermeldung habe ich, wenn ich den Code ausführen ist die folgende:
File "Main.py", line 35, in <module>
daemon_runner = runner.DaemonRunner(app)
File "/usr/local/lib/python3.4/dist-packages/daemon/runner.py", line 111, in __init__
self.daemon_context.stdout = open(app.stdout_path, 'w+t')
io.UnsupportedOperation: File or stream is not seekable.
Wer weiß, wie dies zu beheben, oder haben Sie einen besseren Weg, um einen Daemon in Python zu erstellen?
Wie erhalten Sie den Fehler? –
Ich führe den Befehl 'Python3 main.py start' –
Hat es mit der Tatsache zu tun, dass'/dev/null' nicht suchbar ist? – Tico