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日誌

相關文章
相關標籤/搜索