Mark Sapiro wrote:
File "/usr/lib/python2.3/uu.py", line 139, in decode
sys.stderr.write("Warning: %s\n" % str(v))
File "/usr/lib/mailman/Mailman/Logging/MultiLogger.py", line 45, in write
_logexc(logger, msg)
File "/usr/lib/mailman/Mailman/Logging/Utils.py", line 22, in _logexc
sys.__stderr__.write('Logging error: %s\n' % logger)
IOError: [Errno 32] Broken pipe
I think this could be fixed by changing
"/usr/lib/mailman/pythonlib/email/Message.py", line 223 from
uu.decode(StringIO(payload+'\n'), sfp)
to
uu.decode(StringIO(payload+'\n'), sfp, quiet=True)
There should be other chances that Python builtin modules spew warnings
to sys.stderr. How about this patch for Logging/Utils.py to write these
messages into syslog facility.
--
Tokio Kikuchi, tkikuchi@ is.kochi-u.ac.jp
http://weather.is.kochi-u.ac.jp/
Index: Utils.py
===================================================================
RCS file: /cvsroot/mailman/mailman/Mailman/Logging/Utils.py,v
retrieving revision 2.2.2.1
diff -u -r2.2.2.1 Utils.py
--- Utils.py 27 Aug 2005 01:40:16 -0000 2.2.2.1
+++ Utils.py 15 Jan 2006 02:50:11 -0000
@@ -16,12 +16,25 @@
import sys
import traceback
+import syslog
+import StringIO
+
+syslog.openlog('mailman', syslog.LOG_PID, syslog.LOG_MAIL)
def _logexc(logger=None, msg=''):
- sys.__stderr__.write('Logging error: %s\n' % logger)
- traceback.print_exc(file=sys.__stderr__)
- sys.__stderr__.write('Original log message:\n%s\n' % msg)
+ try:
+ sys.__stderr__.write('Logging error: %s\n' % logger)
+ traceback.print_exc(file=sys.__stderr__)
+ sys.__stderr__.write('Original log message:\n%s\n' % msg)
+ except IOError:
+ syslog.syslog(syslog.LOG_INFO, 'Logging error: %s\n' % logger)
+ tbio = StringIO.StringIO()
+ traceback.print_exc(file=tbio)
+ syslog.syslog(syslog.LOG_INFO, tbio.getvalue())
+ tbio.close()
+ syslog.syslog(syslog.LOG_INFO, 'Original log message:\n%s\n' % msg)
+
def LogStdErr(category, label, manual_reprime=1, tee_to_real_stderr=1):
_______________________________________________
Mailman-Developers mailing list
[email protected]
http://mail.python.org/mailman/listinfo/mailman-developers
Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py
Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/
Unsubscribe:
http://mail.python.org/mailman/options/mailman-developers/archive%40jab.org
Security Policy:
http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.027.htp