【发布时间】:2017-05-12 06:17:24
【问题描述】:
我将烧瓶服务器日志发送到 logstash。我使用了以下代码。
import logging, logging.handlers
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
format = logging.Formatter('%(asctime)-s %(levelname)s %(thread)d --- [%(name)s] %(module)s.%(funcName)s : %(message)s')
command_line = logging.StreamHandler()
command_line.setLevel(logging.DEBUG)
command_line.setFormatter(format)
logger.addHandler(command_line)
logs = logging.handlers.DatagramHandler('localhost', 5000)
logs.setLevel(logging.DEBUG)
logs.setFormatter(format)
logger.addHandler(logs)
但在 logstash 和 kibana 仪表板消息中包含 unicode 字符作为 follwong
\u0000\u0000\u0002\xF3}q\u0000(X\v\u0000\u0000\u0000processNameq\u0001X\v\u0000\u0000\u0000MainProcessq\u0002X\n\u0000\u0000\u0000\stack_infoq\u0003NX\ u0000\u0000\u0000createdq\u0004GA\xD6ET\x86u\xE4mX\n\u0000\u0000\u0000threadNameq\u0005X\n\u0000\u0000\u0000MainThreadq\u0006X\u0006\u0000\000aX\u0000\u0000\u0000x u0000_internalq\bX\b\u0000\u0000\u0000pathnameq\tXc\u0000\u0000\u0000/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/werkzeug/_internal.pyq\nX\ t\u0000\u0000\u0000levelnameq\vX\u0004\u0000\u0000\u0000INFOq\fX\u000F\u0000\u0000\u0000relativeCreatedq\rG@\xA8\x9C\xD3y\x80\u0000\u0000000000X\u0000\uthreadq \u000EL140736587924416L\nX\b\u0000\u0000\u0000funcNameq\u000FX\u0004\u0000\u0000\u0000_logq\u0010X\u0003\u0000\u0000\u0000msgq\u000000\u000000\u00000 * 在http://127.0.0.1:5005/ 上运行(按 CTRL+C 退出)q\u0012X\b\u0000\u0000\u0000exc_textq\u0013NX\u0005\u0000\u0000\u0000msecsq\u0014G@\x8AP\x899\u0000\u0000\u0000 \u0000\u0000\u0000asctimeq\u0015X\u0017\u0000\u0000\u00002017-05-12 11:41:37,842q\u0016X\a\u0000\u0000\u0000processq\u0017M\xE3,X\b\u0000\u0000\u0000exc_infoq\u0018NX\u0004\u0000\u0000\u0000nameq\u000000000000000000000000000000 \u001AX\u0006\u0000\u0000\u0000linenoq\eKWX\b\u0000\u0000\u0000filenameq\u001CX\f\u0000\u0000\u0000_internal.pyq\u001DX\u0004\u0000\u000000000000000000000000000000000000000000000000000000000000000000000000000000000000000X \u0000messageq\u001FX;\u0000\u0000\u0000 * 在http://127.0.0.1:5005/ 上运行(按 CTRL+C 退出)q X\a\u0000\u0000\u0000levelnoq!K\u0014u。
我该如何解决这个问题?
【问题讨论】:
-
你不能在支持 Unicode 的编辑器中打开它吗?例如记事本++
-
你也可以发布你的 Logstash 配置吗?
标签: python logging unicode logstash