Flume採集資料:從指定網路埠和實時監控新增資料
阿新 • • 發佈:2018-12-29
一、從指定埠採集資料
1.配置flume檔案
建立一個檔案叫ip.conf,自己隨便取的名字。
a1.sources=r1 a1.sinks=k1 a1.channels=c1 #描述和配置source,這裡的a表示agent的名字 #第一步:配置source a1.sources.r1.type=netcat a1.sources.r1.bind=192.168.116.10 a1.sources.r1.port=44444 #配置logger a1.sinks.k1.type=logger #配置channel a1.channels.c1.type=memory #三者串聯 a1.sources.r1.channels=c1 a1.sinks.k1.channel=c1
2、測試
先啟動: flume-ng agent -n a1 -c /usr/local/src/apache-flume-1.6.0-bin/conf -f /usr/local/src/apache-flume-1.6.0-bin/conf/ip.conf -Dflume.root.logger=INFO,console
有些地方在啟動的時候,最後加一個&,這樣的好處是在後臺可以保留程序
然後新開一個控制檯,在控制檯輸入telnet 192.168.116.10 44444,然後隨便輸入一些單詞,可以發現原來的控制檯就可以收到埠發出的命令了
二、實時監控新增資料輸出到控制檯
1.配置flume
a1.sources=r1 a1.sinks=k1 a1.channels=c1 #描述和配置source,這裡的a表示agent的名字 #第一步:配置source a1.sources.r1.type=exec a1.sources.r1.channels=c1 #配置需要監控的日誌輸出目錄 a1.sources.r1.command=tail -F /usr/tmp/flume/1.log a1.sources.r1.shell=/bin/sh -c #配置sink a1.sinks.k1.type=logger #配置channel a1.channels.c1.type=memory #將三者串聯 a1.sources.r1.channels=c1 a1.sinks.k1.channel=c1
2.測試
先啟動一下
flume-ng agent -n a1 -c /usr/local/src/apache-flume-1.6.0-bin/conf -f /usr/local/src/apache-flume-1.6.0-bin/conf/tel.conf -Dflume.root.logger=INFO,console
然後新開一個控制檯,在/usr/tmp/flume/1.log這個路徑建好檔案,向檔案輸入內容
可以發現原來的控制檯能實時監控新增加的內容。