Index: squid-tagger.py ================================================================== --- squid-tagger.py +++ squid-tagger.py @@ -106,24 +106,22 @@ self._tail = gevent.queue.Queue() self._worker = None def emit(self, record): # my syslog is broken and cannot into UTF-8 BOM - record.msg = str(record.msg) + record.msg = record.msg.encode('utf-8') self._tail.put(record) if self._worker == None: # in case queue is empty we will spawn new worker # all workers are logged so we can kill them on close() self._worker = gevent.spawn(self._writer) def _writer(self): # here we are locking the queue so we can be sure we are the only one - print('syslog start') while not self._tail.empty(): logging.handlers.SysLogHandler.emit(self, self._tail.get()) self._worker = None - print('syslog end') def close(self): if self._worker != None: gevent.kill(self._worker) logging.handlers.SysLogHandler.close(self)