• flume 对指定日志进行读取



    申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址
    全文共计1577字,阅读大概需要3分钟

    一、 任务描述

    本实验任务主要完成基于ubuntu环境使用flume对指定目录下的日志文件进行读取,通过完成本实验任务,要求学生了解并掌握flume对指定数据文件内容的获取,为从事大数据平台运维工程师、大数据技术支持工程师等岗位工作奠定夯实的技能基础。

    二、 任务目标

    掌握flume的应用原理
      掌握flume对日志信息的采集过程

    三、 任务环境

    本次环境是:Ubuntu16.04+flume-ng-1.5.0-cdh5.3.6

    四、 任务分析

    Flume是Cloudera提供的日志收集系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理操作,并写到各种storage。Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。本试验就是通过学习flume工具实现对指定目录下所有的日志文件数据信息进行采集并实时把采集到的信息保存到hdfs中指定的位置。

    ♥ 知识链接
    数据存储方式
      对于历史数据,我们基于Flume的Spooling方式将数据转存在HDFS中;对于“准实时“数据,我们基于Flume的Tail方式将数据转存在kafka中。

    五、 任务实施

    步骤1、操作步骤

    通过执行命令start-all.sh启动服务,在任意指定目录下创建一个文件,例如在/simple目录下执行命令:touch a2.conf并文件中写入内容如下

    1.	a2.sources = r1
    2.	a2.channels = c1
    3.	a2.sinks = k1
    4.	a2.sources.r1.type = exec
    5.	a2.sources.r1.command = tail -F /simple/a.log
    6.	a2.channels.c1.type = memory
    7.	a2.channels.c1.capacity = 1000
    8.	a2.channels.c1.transactionCapacity = 100
    9.	a2.sinks.k1.type = hdfs
    10.	a2.sinks.k1.hdfs.path =  hdfs://localhost:9000/flume/aa.log
    11.	a2.sinks.k1.hdfs.filePrefix = events-
    12.	a2.sinks.k1.hdfs.fileType = DataStream
    13.	a2.sources.r1.channels = c1
    14.	a2.sinks.k1.channel = c1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    在任意指定目录下创建一个文件,例如在/simple目录下执行命令:touch a.log并向文件中写入内容“aaaaaa“。如图1所示

    在这里插入图片描述

    图1 编辑文件

    切换到bin目录下,执行flume命令:./flume-ng agent -n a2 -f /simple/a2.conf -c ../conf/ -Dflume.root.logger=INFO,console。如图2所示

    在这里插入图片描述

    图2 启动flume

    另外再开启一个终端,通过执行命令:echo ‘bbbbbbbbbb’>>/simple/a.log向a.log文件中追加内容。如图3所示。然后可以通过执行hdfs系统的命令查看hdfs中生成的文件并发现hdfsc指定的目录文件下的内容增多。如图4所示

    在这里插入图片描述

    图3 向文件追加内容

    图4 查看hdfs上文件内容

    在这里插入图片描述

  • 相关阅读:
    C语言-入门-const关键字(十九)
    [GAN]【学习笔记】StyleGAN与StyleGAN2
    Nuxt3环境变量配置
    《算法系列》之树
    12.4泛型 map set
    计算机专硕变简单,只考一门数据结构!陕西理工大学计算机考研改考
    MATLAB | MATLAB中绘图的奇淫技巧合集
    Java|学习|多线程
    【毕业设计教程】单片机发送短信消息(GMS模块) - 物联网 嵌入式 stm32
    实践6 WDG
  • 原文地址:https://blog.csdn.net/qq_44807756/article/details/125631360