一、agent

  第一步是定义agent(代理)及agent下的sources、channels、sinks的简称,如下:

  a1.sources = r1
  a1.sinks = k1
  a1.channels = c1

二、sources

  第二步是定义sources(接收数据源),以下是常见的sources类型:

  1.type = netcat  =>监视一个端口,需要端口名称、端口号:

    bind = localhost

    port = 44444

  2.type = exec  =>监视一个文件,需要命令行、命令行使用的脚本

    command = tail -F /opt/jars/calllog.csv

    shell = /usr/bin/bash -c

  3.type = spooldir  =>监视一个文件夹,需要文件夹路径

    可以添加进入文件夹文件的后缀名、可以添加绝对路径的文件名、通过正则表达式过滤以tmp结尾的文件

    spoolDir = /root/spooldir

    fileSuffix = .COMPLETED

    fileHeader = true

    ignorePattern = ([^]*\.tmp)

  4.selector.type = replicating  =>将数据量复制给多个channel

  5.type = avro  =>通过端口接收数据,需要端口名称、端口号

    bind = hd1-1

    port = 4141

三、channels

  第三步是设置channel(管道)的类型等

  1.tpye = memory  =>使用内存为管道,设置内存总容量、每次传输的容量

    capacity =1000

    transactionCapacity =100

  2.使用磁盘作为管道

四、sink

  第四步是设置sink(下沉)的类型和细节设置

  1.type = logger  =>输出日志文件,用于监控端口直接在端口输出接受的数据

  2.type = hdfs  =>输出到hdfs,

    hdfs.path = hdfs://hd1-1:9000/flume/%Y%m%d/%H  =>设置hdfs的路径

    hdfs.filePrefix = logs-  =>设置文件的前缀

    hdfs.round = true  =>按照时间滚动文件夹

    hdfs.roundValue = 1  =>多长时间创建一个新文件夹

    hdfs.roundUnit = minute  =>定义时间的单位

    hdfs.useLocalTimeStamp = true  =>使用本地时间戳

    hdfs.batchSize = 500  =>积攒到少event后flush到hdfs一次

    hdfs.fileType = DataStream  =>设置文件类型,可支持压缩

    hdfs.rollInterval = 30  =>多久生成一个新文件

    hdfs.rollSize = 134217700  =>设置每个文件的滚动大小

    hdfs.rollCount = 0  =>滚动与Event无关

    hdfs.minBlockReplicas = 1  =>最小冗余数(及备份数,hdfs自带无需配置)

  3.type = avro  =>将数据发送到端口,需要设置端口名称、端口号

    hostname = hd1-1

    port = 4141

  4.type = file_roll  =>将数据传输到本地文件,需要设置文件路径

    sink.directory = /root/flume2  注意flume2文件夹需要自己创建

  5.type = org.apache.flume.sink.kafka.KafkaSink  =>将数据传输到kafka

    需要设置集群的机器名称和端口号、主题、batchSize、Ack机制

    brokerList = hd1-1:9092,hd1-2:9092,hd1-3:9092

    topic = calllog

    batchSize = 20

    requiredAcks =1   ACK机制(1、0、-1,1是最安全的)

五、bind

  a1.sources.r1.channels = c1

  a1.sinks.k1.channel = c1

Flume配置文件写法总结的更多相关文章

  1. flume配置文件

    读文件log传入kafka中 agent.sources = s1 agent.channels = c1 agent.sinks = k1 agent.sources.s1.type=exec ag ...

  2. 2018.12.15 struts.xml 一般配置文件写法 && 配置动态方法

    struts.xml 原始配置文件 配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE s ...

  3. python中配置文件写法

    import os BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) print(BASE_DIR) USE ...

  4. log4j配置文件写法

    ### direct log messages to stdout ###log4j.rootLogger=DEBUG,stdoutlog4j.appender.stdout=org.apache.l ...

  5. pxelinux.0:winboot:网络引导(启动)wim格式的windows PE系统:配置文件写法

    关键:加载wimboot引导模块,并传入参数 todo:通过标准kenerl的append传入启动参数..........todo.todo default menu.c32 label wimboo ...

  6. ipxe(可选):winboot:网络引导(启动)wim格式的windows PE系统:配置文件写法

    ipxe 无盘[网络]引导wim格式的pe系统 wimboot引导程序需要为其提供4个内核参数 bcd bootmgr boot.sdi boot.wim 所需文件附件 以下是我的可用的ipxe的配置 ...

  7. Flume-Hbase-Sink针对不同版本flume与HBase的适配研究与经验总结

    https://cloud.tencent.com/developer/article/1025430 Flume-Hbase-Sink针对不同版本flume与HBase的适配研究与经验总结 mike ...

  8. Flume 详解&实战

    Flume 1. 概述 Flume是一个高可用,高可靠,分布式的海量日志采集.聚合和传输的系统.Flume基于流式架构,灵活简单. Flume的作用 Flume最主要的作用就是,实时读取服务器本地磁盘 ...

  9. Flume(3)source组件之NetcatSource使用介绍

    一.概述: 本节首先提供一个基于netcat的source+channel(memory)+sink(logger)的数据传输过程.然后剖析一下NetcatSource中的代码执行逻辑. 二.flum ...

随机推荐

  1. Android之androidmainfest.xml配置文件详解

    写配置文件的时候我们会不知道把那些配置项放在哪里,请看: 配置文件样例: <?xml version="1.0" encoding="utf-8"?> ...

  2. C#闰年判断

  3. mybatis 按in 函数参数顺序排序

    使用 FIELD()函数 SELECT *  FROM   user  WHERE id IN (72, 80, 69)  ORDER BY FIELD(id, 72, 80, 69)

  4. 通过cmd 使用 InstallUtil.exe 命令 操作 windows服务 Windows Service

    要安装windows service 首先要找到 InstallUtil.exe,InstallUtil.exe位置在 C:\Windows\Microsoft.NET\Framework\v4.0. ...

  5. GitHub访问慢

    问题描述 一直都觉得访问 GitHub 时速度非常慢,刷新一下都要等好久!于是尝试一下能否解决掉... github.com assets-cdn.github.com avatar2.githubu ...

  6. Confluence 6 MySQL 测试你的数据库连接

    在你的数据库设置界面,有一个 测试连接(Test connection)按钮可以检查: Confluence 可以连接你的数据库服务器 数据库字符集,隔离级别和存储引擎是正确的 你的数据库用户有正确的 ...

  7. 基于 Confluence 6 数据中心的 SAML 单点登录设置 SSL/TLS

    请确定 SAML 授权是安全和私有的,你需要在你的应用程序中设置SSL/TLS. 请参考in the application. See Running Confluence Over SSL or H ...

  8. bat命令行实现全盘遍历搜索文件

    背景:当想要查找一个文件时,记得放在某个盘里.手动去遍历时感觉好心累,找了半天还是没有找着(虽然win有自带的搜索框,但是看着进度条的速度,我便果断的点了取消).基于这个情况,所以写了脚本满足自身查找 ...

  9. cf161d 求距离为k的点对(点分治,树形dp)

    点分治裸题,但是用树形dp也能做 /* dp[u][k]表示在u下距离k的点数量 */ #include<bits/stdc++.h> using namespace std; ]; ], ...

  10. AI-CBV写法

    AI-CBV写法 CBV固定样式 #url.py from django.conf.urls import url from django.contrib import admin from app0 ...