打开book
在 BookViewController 里 添加 (导入的包 import org.apache.log4j.Logger;)
private Logger log4j=Logger.getLogger(BookViewController.class);
添加 log4j.info(“book be searched :”+bookId);
启动项目采集日志 去c盘log中查看
启动虚拟机
启动zk:
zjgm01,zjgm02,zjgm03
zkServer.sh start
启动kafka
zjgm01,zjgm02,zjgm03
kafka-server-start.sh /home/hadoop/app/kafka_2.11-0.11.0.2/config/server.properties
启动storm
zjgm01
storm nimbus (如果失败就删掉hadoop/app/apache-storm-0.9.2-incubating/bin/storm-local 里的文件)
zjgm02,zjgm03
storm supervisor (如果失败就删掉hadoop/app/apache-storm-0.9.2-incubating/bin/storm-local 里的文件)
在 cd /home/hadoop/flumedata 下 上传 log.log
启动flume
flume-ng agent --conf conf --conf-file /home/hadoop/app/apache-flume-1.9.0-bin/conf/my.conf --name a1 -Dflume.root.logger=INFO,console
(ks.conf 为自己的conf文件名)
stormkafka,
修改“ReadBolt.java”部分代码如下
int index = s.indexOf(“book be searched:”);
if(index!=-1 && s.length()>=index + 23){
String s1 = s.substring(index + 18, index + 23);
basicOutputCollector.emit(new Values(s1));
}
运行
安装“RedisDesktopManager”
双击安装,下一步到底完成
打开点击左下角
新建如下
打开idea的“stormkafka”项目,修改“WriteCountBolt.java”代码如下
Jedis jedis=null;
@Override
public void prepare(Map stormConf, TopologyContext context) {
jedis=new Jedis("127.0.0.1",6379);
}
@Override
public void execute(Tuple tuple, BasicOutputCollector basicOutputCollector) {
String s=tuple.getString(0);
jedis.hincrBy("thingIds",s,1);
}
@Override
public void declareOutputFields(OutputFieldsDeclarer outputFieldsDeclarer) {
}
运行后可在Redis中看到