Date: Wed, 20 Feb 2002 22:07:17 -0500 From: Eric I.Arnoth <earnoth@comcast.net> To: freebsd-questions@freebsd.org Subject: syslog.conf problems Message-ID: <20020221030958.QQRM18863.femail11.sdc1.sfba.home.com@there>
next in thread | raw e-mail | index | archive | help
If anyone replies to my message, please be sure to keep my email on the CC or TO fields, I do not subscribe to this list. I've been trying to get a script which will take the output from syslog and handle it, but I can't get past the hello world stage. I've tried a bourne shell script and a python script (which is the language I want to write the end-result in). With the bourne shell script, I get countless error messages like the following, with decrementing subprocess IDs: ----------------------------------------------------- Feb 20 21:39:10 systemname syslogd: Logging subprocess 1894 (exec /hello_log.sh) exited with status 126. Feb 20 21:39:10 systemname syslogd: exec /hello_log.sh: Broken pipe ----------------------------------------------------- Here's the bournshell script hello_log.sh: ----------------------------------------------------- #!/bin/sh read line echo "$line" >> /test.out ----------------------------------------------------- With the Python script, I only get output after I HUP the syslogd process. I get all the output I should, but I want it processed real-time by a run-once-and-die script. Here's a few variations of the python script I've tried: ----------------------------------------------------- #!/usr/local/bin/python import sys test_file = open("/test.out", 'a') test_file.write(sys.__stdin__.read()) test_file.flush() test_file.close() sys.exit() ----------------------------------------------------- #!/usr/local/bin/python import sys test_file = open("/test.out", 'a') for char in sys.__stdin__.read(): test_file.write(char) test_file.flush() test_file.close() sys.exit() ----------------------------------------------------- #!/usr/local/bin/python import sys test_file = open("/test.out", 'a') for char in sys.__stdin__.read(): if char=='\012': test_file.write(char) test_file.flush() test_file.close() sys.exit() else: test_file.write(char) test_file.flush() test_file.close() sys.exit() ----------------------------------------------------- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020221030958.QQRM18863.femail11.sdc1.sfba.home.com>