Flume(4)实用环境搭建:source(spooldir)+channel(file)+sink(hdfs)方式

一、概述:

在实际的生产环境中,一般都会遇到将web服务器比如tomcat、Apache等中产生的日志倒入到HDFS中供分析使用的需求。这里的配置方式就是实现上述需求。

二、配置文件:

#agent1 name
agent1.sources=source1
agent1.sinks=sink1
agent1.channels=channel1

#Spooling Directory
#set source1
agent1.sources.source1.type=spooldir
agent1.sources.source1.spoolDir=/opt/flumetest/data

agent1.sources.source1.channels=channel1
agent1.sources.source1.fileHeader = false
agent1.sources.source1.interceptors = i1
agent1.sources.source1.interceptors.i1.type = timestamp

#set sink1
agent1.sinks.sink1.type=hdfs
agent1.sinks.sink1.hdfs.path=/home/hdfs/flume/logs
agent1.sinks.sink1.hdfs.fileType=DataStream
agent1.sinks.sink1.hdfs.writeFormat=TEXT
agent1.sinks.sink1.hdfs.rollInterval=1
agent1.sinks.sink1.channel=channel1
agent1.sinks.sink1.hdfs.filePrefix=%Y-%m-%d

#set channel1
agent1.channels.channel1.type=file
agent1.channels.channel1.checkpointDir=/opt/flumetest/cp/point
agent1.channels.channel1.dataDirs=/opt/flumetest/cp

三、执行下述命令:

执行之前先确保上面配置文件中定义的文件夹都已经存在。

bin/flume-ng agent -n agent1 -c conf -f study/logs2hdfs.conf -Dflume.root.logger=DEBUG,console

source文件夹中的日志列表如下:

四、查看hdfs中的数据:

可以看到里面的数据文件都很小,这跟配置有关系,因为sink的配置里rollInterval配置的时间间隔太小导致的。可以根据需求在进行调整。

时间: 2024-10-05 10:15:08

Flume(4)实用环境搭建:source(spooldir)+channel(file)+sink(hdfs)方式的相关文章

【Flume】【*】深入flume-ng的三大组件——source,channel,sink

概览 flume-ng中最重要的核心三大组件就是source,channel,sink source负责从源端收集数据,产出event channel负责暂存event,以备下游取走消费 sink负责消费通道中的event,写到最终的输出端上 以上是总体的一个简单结构图,下面我们来深入每一个组件的内部看看: 1.Source source接口的定义如下: @InterfaceAudience.Public @InterfaceStability.Stable public interface S

Cocos2dx 3.0开发环境搭建--Eclipse上构建一个Android项目

一.前言: 本篇主要介绍Cocos2d-x 3.0的一些基础内容,以及在Eclipse上上编译我们的Cocos2d-x项目,成功把Helloworld运行起来了.看完本篇博客之后,你就会知道Cocos2d-x 3.0竟然发生了如此大的变化,变得如此简单,环境搭建.项目创建.编译的方式更加人性化了. 二.环境准备: 1.下载ADT Bundle(Eclipse捆绑了SDK和ADT),或者是Eclipse安装了ADT插件. 2.安装JDK.NDK.Ant .Python,然后配置环境. 3.Coco

Omi原理-环境搭建

环境搭建 Omi框架使用 Webpack + ES6 的方式去开发:使用karma+jasmine来作为Omi的测试工具. Karma介绍 Karma是一个基于Node.js的JavaScript测试执行过程管理工具(Test Runner).该工具可用于测试所有主流Web浏览器,也可集成到CI(Continuous integration)工具,也可和其他代码编辑器一起使用.这个测试工具的一个强大特性就是,它可以监控(Watch)文件的变化,然后自行执行.但是集成到travis ci要把sin

Flume环境搭建_五种案例

Flume环境搭建_五种案例 http://flume.apache.org/FlumeUserGuide.html A simple example Here, we give an example configuration file, describing a single-node Flume deployment. This configuration lets a user generate events and subsequently logs them to the conso

【Android进阶】Junit单元测试环境搭建以及简单实用

单元测试的目的 首先,Junit单元测试要实现的功能,就是用来测试写好的方法是否能够正确的执行,一般多用于对业务方法的测试. 单元测试的环境配置 1.在AndroidManifest清单文件的Application节点下,引入单元测试使用的库 2.在AndroidManifest清单文件与Application节点平行的节点中,添加instrumentation节点 下面是一个完整的配置的代码 <manifest xmlns:android="http://schemas.android.

Java Web开发SpringMVC和MyBatis框架开发环境搭建和简单实用

1.下载SpringMVC框架架包,下载地址: 点击下载 点击打开地址如图所示,点击下载即可 然后把相关的jar复制到lib下导入 2.MyBatis(3.4.2)下载 点击下载 MyBatis中文文档地址 点击查看 下载解压之后把jar复制到lib下导入,大概是这样子的 3.jdbc连接库还没有下载...这个是5.1.41版本的... 点击下载 解压之后这样子... 4.fastjson 阿里巴巴的json解析库 点击下载 版本是1.2.24 这个是托管到了github上面的,地址是:点击进入

分布式实时日志系统(一)环境搭建之 Jstorm 集群搭建过程/Jstorm集群一键安装部署

最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式处理,采用 flume 收集日志,发送到 kafka 队列做缓冲,storm 分布式实时框架进行消费处理,短期数据落地到 hbase.mongo中,长期数据进入 hadoop 中存储. 接下来打算将这其间所遇到的问题.学习到的知识记录整理下,作为备忘,作为分享,带给需要的人. 淘宝开源了许多产品组件

linux环境下完成jenkins的环境搭建

环境搭建部署: 请完成jenkins的环境搭建,需安装tomcat,mysql. Jenkins 地址:  https://jenkins.io/download/ 步骤分析: 1.全部操作使用普通用户hindy,当然也可直接使用root用户 2.需列出配置环境变量详细步骤,并保证环境变量每次优先解析JAVA_HOME 3.修改jenkins的访问端口设置为8090 4.Mysql的端口修改为8036 5.需考虑防火墙的端口问题 6.最终需给出访问jenkins和mysql的截图 具体操作如下:

Python网络编程实战之一个人开发环境搭建

本节介绍在Debian下利用Python进行网络编程时,需要安装的一些实用的工具包. 0x01  安装开发必备软件包 $ sudo aptitude -y install build-essential     ##"-y"的作用是:在安装过程中,如果遇到Y或N的提问,一律以Yes作为默认的答案 $ sudo aptitude -y install libsqlite3-dev $ sudo aptitude -y install libreadline6-dev $ sudo apt