Flume入门教程-简单案例

本文介绍如何使用Flume收集、聚合和移动大量日志数据。包括下载安装Flume、配置简单的Agent来收集数据并通过telnet进行测试的过程。还提供了进一步的配置示例,如通过tail命令读取日志文件及跟踪指定目录。

Flume入门教程-简单案例

 

1.下载安装

 

官方网站:http://flume.apache.org/
http://mirror.bit.edu.cn/apache/flume/1.6.0/apache-flume-1.6.0-bin.tar.gz
tar -zxvf apache-flume-1.6.0-bin.tar.gz

 

 

2.修改配置

重命名flume-conf.properties.template文件为simple.conf,并修改为以下内容

 

Agent名称定义为agent. 
Source:可以理解为输入端,定义名称为s1
channel:传输频道,定义为c1,设置为内存模式
sinks:可以理解为输出端,定义为sk1,

agent.sources = s1  
agent.channels = c1
agent.sinks = sk1

#设置Source的内省为netcat 端口为5678,使用的channel为c1
agent.sources.s1.type = netcat
agent.sources.s1.bind = localhost
agent.sources.s1.port = 5678
agent.sources.s1.channels = c1

#设置Sink为logger模式,使用的channel为c1
agent.sinks.sk1.type = logger
agent.sinks.sk1.channel = c1
#设置channel信息
agent.channels.c1.type = memory #内存模式
agent.channels.c1.capacity = 1000   
agent.channels.c1.transactionCapacity = 100 #传输参数设置。

 

 

3.启动Agent

bin/flume-ng agent -c conf -f conf/simple.conf --name agent -Dflume.root.logger=INFO,console

 

4.发送测试数据

 

telnet localhost 5678
hello,world.

 

5.验证数据接收

验证flume是否接收到了数据

 

 

6.简单优化配置:
修改flume-env.sh,设置JDK版本,Flume1.6.0需要JDK1.6+
export JAVA_HOME=/opt/jdk1.7/jdk1.7.0_45/

设置内存相关参数
JAVA_OPTS="-Xms8192m -Xmx8192m -Xss256k -Xmn2g -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:-UseGCOverheadLimit"

 

7.其他配置案例

 使用命令行模式Tail读取日志文件配置

agent.sources = s1
agent.channels = c1
agent.sinks = sk1

#设置Tail方式跟踪日志内容
agent.sources.s1.type = exec
agent.sources.s1.command = tail -F /usr/local/logstash-1.4.2/new_log.2015-03-26.txt 
agent.sources.s1.channels = c1

agent.sinks.sk1.type = logger
agent.sinks.sk1.channel = c1

#In Memory !!!
agent.channels.c1.type = memory
agent.channels.c1.capacity = 10004
agent.channels.c1.transactionCapacity = 100

 

设置跟踪目录方式

 

agent.sources = s1
agent.channels = c1
agent.sinks = sk1

#设置spooldir
agent.sources.s1.type = spooldir
agent.sources.s1.spoolDir = /usr/local/logstash-1.4.2/logs
agent.sources.s1.fileHeader = true

agent.sources.s1.channels = c1
agent.sinks.sk1.type = logger
agent.sinks.sk1.channel = c1

#In Memory !!!
agent.channels.c1.type = memory
agent.channels.c1.capacity = 10004
agent.channels.c1.transactionCapacity = 100

 

 

 

分布式微服务企业级系统是一个基于Spring、SpringMVC、MyBatis和Dubbo等技术的分布式敏捷开发系统架构。该系统采用微服务架构和模块化设计,提供整套公共微服务模块,包括集中权限管理(支持单点登录)、内容管理、支付中心、用户管理(支持第三方登录)、微信平台、存储系统、配置中心、日志分析、任务和通知等功能。系统支持服务治理、监控和追踪,确保高可用性和可扩展性,适用于中小型企业的J2EE企业级开发解决方案。 该系统使用Java作为主要编程语言,结合Spring框架实现依赖注入和事务管理,SpringMVC处理Web请求,MyBatis进行数据持久化操作,Dubbo实现分布式服务调用。架构模式包括微服务架构、分布式系统架构和模块化架构,设计模式应用了单例模式、工厂模式和观察者模式,以提高代码复用性和系统稳定性。 应用场景广泛,可用于企业信息化管理、电子商务平台、社交应用开发等领域,帮助开发者快速构建高效、安全的分布式系统。本资源包含完整的源码和详细论文,适合计算机科学或软件工程专业的毕业设计参考,提供实践案例和技术文档,助力学生和开发者深入理解微服务架构和分布式系统实现。 【版权说明】源码来源于网络,遵循原项目开源协议。付费内容为本人原创论文,包含技术分析和实现思路。仅供学习交流使用。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值