iro/dump_test_log.py
author Sandro Knauß <knauss@netzguerilla.net>
Fri, 18 Nov 2011 22:47:25 +0100
changeset 70 a9ee0fe847a8
parent 66 eabb8ead183d
permissions -rw-r--r--
nur benutzernamen übermitteln

import time, os, signal
LOG_FILE = 'test.log'

log_file = open(LOG_FILE, 'a')

def log(msg):
    log_file.write(msg + '\n')
    log_file.flush()

def SigUSR1Handler(signum, frame):
    print "Reacting on USR1 signal (signal 10)"
    global log_file
    log_file.close()
    log_file = open(LOG_FILE, 'a')
    return

def init():
    if os.path.isfile('/var/usr/dump_test_log.pid'):
        print 'Have to stop server first'
        os.exit(1)
    else:
        print 'Starting server...'
        #write process id file
        f = open('/var/run/dump_test_log.pid', 'w')
        f.write(str(os.getpid()))
        f.flush()
        f.close()
        print 'Process start with pid ', os.getpid()

    signal.signal(signal.SIGUSR1, SigUSR1Handler)

def main():
    init()
    count = 1
    while True:
      log('log line #%d, pid: %d' % (count, os.getpid()))
    count = count + 1
    time.sleep(1)

if __name__ == '__main__':
    main()