twitter の userstream が突然調子悪くなる案件 - dev.jgs.me

node.js から twitter の userstream を扱うのには、 ntwitter は挙動がバギーなので user-stream を使っている。

https://github.com/aivis/user-stream

ログを見てみると garbage イベントを吐きまくっていた。当該部分を読んでみると

https://github.com/aivis/user-stream/blob/master/lib/user-stream.js#L131

_
try {
    //try parse & emit
    buffer = JSON.parse(buffer);
    parsed = true;
} catch(e) {
    stream.emit('garbage', buffer);
}

という感じで、 JSON.parse に失敗したら garbage を吐くようになってる。 catch 節で buffer をダンプしてみると確かにjsonデータがぶつ切れになっていて、そりゃあパースに失敗するよなあ、という感じ。

今は小康状態で時々出るぐらいなんだけど、困ったなー。いっちょフォークして直してやるか!...とおもったら、そういう時に限ってなかなか garbage が発火しなくて泣ける。

一旦様子見で。

original: http://dev.jgs.me/2013/12/12/tenor-twitter-userstream-suddenly-e-case
#20131212 #1212

関連ページとランダムに選ばれたページ

筆者について

jigsaw(ジグソウ、1991年6月12日-)は日本のプログラマ、会社代表。本名は小林貴也(こばやし たかや)。主にウェブ、フロントエンド領域で活動している。カミング・スーン合同会社の代表社員。
さらに詳しく

寄附について

面白かったらBTCETHでの寄附をお待ちしております。
寄附のきろく