一、python生成日志
- 首先创建一个python工程,生成日志
//生成1-999数字,当作日志信息
//保存在e:/kafkalog/abc.log目录下
if __name__ == '__main__':
with open("e:/kafkalog/abc.log","w") as f:
for r in range(1,1000):
f.write("test"+str(r)+"\n")
- python该文件放入到Linux,使用python命令执行该文件,从而在Linux本地下生成日志信息
- 在Linux中使用python命令,执行该文件,生成日志
python generate_log.py
二、将日志信息通过flume上传至hdfs
- 在Linux中创建一个文件flume1.properties,并且编辑该文件
a1.sources=r1
a1.channels=c1
a1.sinks=k1
a1.sources.r1.type = exec
//上传文件
a1.sources.r1.command = tail -F /opt/myshell/abc.log
a1.sources.r1.channels = c1
a1.channels.c1.type = file
a1.channels.c1.checkpointDir = /opt/flume/checkpoint
a1.channels.c1.dataDir = /opt/flume/data
a1.sinks.k1.type=hdfs
a1.sinks.k1.channel=c1
//hdfs路径
a1.sinks.k1.hdfs.path=hdfs://192.168.153.200:9000/flume/events
- 用flume命令执行该文件,将数据上传至hdfs上
flume-ng agent --name a1 -f /opt/flumecfg/flume1.properties
- 查看hdfs上结果