1

ツイートを HDFS に保存するために Apache Flume を使用しようとしています。現在、Hadoop と Flume で Cloudera イメージを使用しています。Cloudera のブログのチュートリアルに従っていましたが、Twitter API に接続できません。

次のエラーが表示されます:

2014-03-14 09:43:14,021 INFO org.apache.flume.node.Application: Waiting for channel: MemChannel to start. Sleeping for 500 ms
2014-03-14 09:43:14,069 INFO org.apache.flume.instrumentation.MonitoredCounterGroup: Monitored counter group for type: CHANNEL, name: MemChannel: Successfully registered new MBean.
2014-03-14 09:43:14,069 INFO org.apache.flume.instrumentation.MonitoredCounterGroup: Component type: CHANNEL, name: MemChannel started
2014-03-14 09:43:14,522 INFO org.apache.flume.node.Application: Starting Sink HDFS
2014-03-14 09:43:14,522 INFO org.apache.flume.node.Application: Starting Source Twitter
2014-03-14 09:43:14,525 INFO org.apache.flume.instrumentation.MonitoredCounterGroup: Monitored counter group for type: SINK, name: HDFS: Successfully registered new MBean.
2014-03-14 09:43:14,525 INFO org.apache.flume.instrumentation.MonitoredCounterGroup: Component type: SINK, name: HDFS started
2014-03-14 09:43:14,595 INFO twitter4j.TwitterStreamImpl: Establishing connection.
2014-03-14 09:43:14,680 INFO org.mortbay.log: Logging to org.slf4j.impl.Log4jLoggerAdapter(org.mortbay.log) via org.mortbay.log.Slf4jLog
2014-03-14 09:43:14,823 INFO org.mortbay.log: jetty-6.1.26
2014-03-14 09:43:14,946 INFO org.mortbay.log: Started SocketConnector@0.0.0.0:41414
2014-03-14 09:43:16,249 INFO twitter4j.TwitterStreamImpl: 401:Authentication credentials (https://dev.twitter.com/pages/auth) were missing or incorrect. Ensure that you have set valid consumer key/secret, access token/secret, and the system clock is in sync.

HTTP ERROR: 401

Problem accessing '/1.1/statuses/filter.json'. Reason:
Unauthorized



2014-03-14 09:43:16,249 INFO twitter4j.TwitterStreamImpl: Waiting for 10000 milliseconds
2014-03-14 09:43:26,251 INFO twitter4j.TwitterStreamImpl: Establishing

Twitter API 資格情報を Flume.conf にコピーしました (ディスクと Web UI の両方で試しました)。また、それらを再生成して新しいものをコピーしようとしましたが、役に立ちませんでした。

私のpom.xmlには以下が含まれています:

<dependency>
  <groupId>org.twitter4j</groupId>
  <artifactId>twitter4j-stream</artifactId>
  <version>3.0.5</version>
</dependency>

つまり、ここで説明されている問題は発生しないはずです。

また、コマンドでシステム時刻を設定しました:

sudo ntpdate pool.ntp.org

何が間違っている可能性があるかについて誰かが考えていますか? ご提案やご協力をいただき、誠にありがとうございます。

4

2 に答える 2

0

更新: 無効なコンシューマー キー/シークレット、アクセス トークン/シークレットが原因で、システム クロックが同期していることを確認してください。」

于 2015-05-18T17:53:35.027 に答える
0

Twitter4J 3.0.6 にアップグレードしてみてください。3.0.6 にアップグレードすることで同様の問題を解決しました。

于 2014-03-17T00:04:55.623 に答える