import time
import os
import sys
-import StringIO
-
+from io import StringIO
from config import config
import util
import log
def recode(s):
if s.__class__ == ''.__class__:
- return s.decode('iso-8859-1', 'replace').encode('us-ascii', 'replace')
+ return s.encode('iso-8859-1', 'replace').decode('us-ascii', 'replace')
else:
- return s.encode('us-ascii', 'replace')
+ return s.decode('us-ascii', 'replace')
class Message:
def __init__(self):
self.headers = {}
- self.body = StringIO.StringIO()
+ self.body = StringIO()
self.set_std_headers()
def set_header(self, n, v):
# just head and tail
f = open(log)
line_cnt = 0
- for l in f.xreadlines():
+ for l in f:
line_cnt += 1
f.seek(0)
line = 0
- for l in f.xreadlines():
+ for l in f:
if line < 100 or line > line_cnt - 100:
self.body.write(recode(l))
if line == line_cnt - 100:
f = os.popen(send_sendmail, "w")
try:
self.write_to(f)
- except IOError, e:
+ except IOError as e:
log.alert("sending email message failed: %s" % e)
f.close()
return False