Logentries - Python 示例 return UnicodeDecodeError

Logentries - Python example return UnicodeDecodeError

我正在尝试设置一个 "logentries" 帐户来记录我的 python 开发事件。 但是即使使用文档中提供的最简单的测试,我也会收到以下错误。有什么想法吗?

Python 2.7.10 (default, May 23 2015, 09:40:32) [MSC v.1500 32 bit (Intel)] on wi
n32
Type "help", "copyright", "credits" or "license" for more information.
>>> from logentries import LogentriesHandler
>>> import logging
>>> log = logging.getLogger('logentries')
>>> log.setLevel(logging.INFO)
>>> log.addHandler(LogentriesHandler('xxxx-xxxx-xxxx-xxxx-xxxx'))
>>> log.info('teste')
LE: Starting Logentries Asynchronous Socket Appender
>>> Exception in thread Thread-1:
Traceback (most recent call last):
  File "C:\Python27\lib\threading.py", line 810, in __bootstrap_inner
    self.run()
  File "C:\Python27\lib\site-packages\logentries\utils.py", line 96, in run
    multiline = le_helpers.create_unicode(data).replace(
  File "C:\Python27\lib\site-packages\logentries\helpers.py", line 31, in create
_unicode
    return unicode(ch, 'utf-8')
UnicodeDecodeError: 'utf8' codec can't decode byte 0xe1 in position 59: invalid
continuation byte

感谢 Nikita 的评论,我找到了问题所在。

Helpers.py 来自 logentries 的库没有为拉丁语言准备OS,其时间戳标签有特殊字母“á”。

正在替换

unicode(ch,'utf8')

unicode(ch,'utf8','replace')

成功了。