node scribe中文编码问题

使用node scribe上报日志,查询结果的时候发现中文字符变成了乱码,经询问服务端,日志在上传时就已是乱码了,说明是端上的问题,因此排查node scribe的问题。node

借用网上一张scribe架构图git

clipboard.png

据图能够看出scribe是基于Thrift通讯的,node-scribe中也是依赖了thrift包。数据编码的问题通常就是在通信层。github

要解决中文编码问题,须要对node-scribe的thrift使用进行调整。具体两点:json

  • 将目前node scribe包的thrift版本从0.7.0 升级到0.9.3架构

  • 指定thrift的数据传输按帧的形式发送this

    thrift.createConnection(this.host, this.port, {transport: thrift.TFramedTransport});

因为这里须要改动node scribe包,怎么办呢?编码

github上fork一份,本身改代码,而后在package.json中将scribe包指定为本身git的项目地址spa

若是改动后仍是不能解决中文编码问题,能够继续搜索「thrift中文编码」,而不是搜索scribe日志

相关文章
相关标签/搜索