Flume抽取日志

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 监控节点dt02上的日志文件,并将日志传输到节点dt03 agent结构图 在dt02上配置agent exec-menory-avro.conf ##将dt02的数据发送给dt03 exec-menory-avro.

监控节点dt02上的日志文件,并将日志传输到节点dt03

agent结构图

image

在dt02上配置agent

exec-menory-avro.conf

##将dt02的数据发送给dt03

exec-menory-avro.sources = exec-source
exec-menory-avro.sinks = avro-sink
exec-menory-avro.channels = menory-channel

exec-menory-avro.sources.exec-source.type = exec
exec-menory-avro.sources.exec-source.command = tail -F /root/data-liwenchi/data.log
exec-menory-avro.sources.exec-source.shell = /bin/sh -c

exec-menory-avro.sinks.avro-sink.type = avro
exec-menory-avro.sinks.avro-sink.hostname = dt03
exec-menory-avro.sinks.avro-sink.port = 44444

exec-menory-avro.channels.menory-channel.type = memory
exec-menory-avro.channels.menory-channel.capacity = 1000
exec-menory-avro.channels.menory-channel.transactionCapacity = 100

exec-menory-avro.sources.exec-source.channels = menory-channel        
exec-menory-avro.sinks.avro-sink.channel = menory-channel

在dt03上配置agent

#接收从dt02发送过来的数据

avro-memory-logger.sources = avro-source
avro-memory-logger.sinks = logger-sink
avro-memory-logger.channels = menory-channel

avro-memory-logger.sources.avro-source.type = avro
avro-memory-logger.sources.avro-source.bind = dt03
avro-memory-logger.sources.avro-source.port = 44444

avro-memory-logger.sinks.logger-sink.type = logger

avro-memory-logger.channels.menory-channel.type = memory
avro-memory-logger.channels.menory-channel.capacity = 1000
avro-memory-logger.channels.menory-channel.transactionCapacity = 100

avro-memory-logger.sources.avro-source.channels = menory-channel        
avro-memory-logger.sinks.logger-sink.channel = menory-channel

启动脚本

run.sh

#!/bin/bash
flume-ng agent \
--name avro-memory-logger \
--conf /root/liwenchi/flume \
--conf-file avro-memory-logger.conf \
-Dflume.root.logger=INFO,console

注意事项

启动时,先启动dt03上的agent再启动dt02上的agent

日志收集过程

  1. 节点dt01上监控一个文件,当用户访问时记录行为日志到dt01上的access.log中
  2. avro sink将新产生的日志输出到对应的avro source指定的hostname和port上
  3. 通过avro source对应的agent将日志输出到控制台(kafka)
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
8月前
|
存储 分布式计算 监控
【Flume】Flume 监听日志文件案例分析
【4月更文挑战第4天】【Flume】Flume 监听日志文件案例分析
|
8月前
|
存储 运维 监控
【Flume】flume 日志管理中的应用
【4月更文挑战第4天】【Flume】flume 日志管理中的应用
|
5月前
|
存储 数据采集 数据处理
【Flume拓扑揭秘】掌握Flume的四大常用结构,构建强大的日志收集系统!
【8月更文挑战第24天】Apache Flume是一个强大的工具,专为大规模日志数据的收集、聚合及传输设计。其核心架构包括源(Source)、通道(Channel)与接收器(Sink)。Flume支持多样化的拓扑结构以适应不同需求,包括单层、扇入(Fan-in)、扇出(Fan-out)及复杂多层拓扑。单层拓扑简单直观,适用于单一数据流场景;扇入结构集中处理多源头数据;扇出结构则实现数据多目的地分发;复杂多层拓扑提供高度灵活性,适合多层次数据处理。通过灵活配置,Flume能够高效构建各种规模的数据收集系统。
103 0
|
3月前
|
SQL 分布式计算 Hadoop
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
54 2
|
3月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
59 1
|
5月前
|
存储 分布式计算 大数据
【Flume的大数据之旅】探索Flume如何成为大数据分析的得力助手,从日志收集到实时处理一网打尽!
【8月更文挑战第24天】Apache Flume是一款高效可靠的数据收集系统,专为Hadoop环境设计。它能在数据产生端与分析/存储端间搭建桥梁,适用于日志收集、数据集成、实时处理及数据备份等多种场景。通过监控不同来源的日志文件并将数据标准化后传输至Hadoop等平台,Flume支持了性能监控、数据分析等多种需求。此外,它还能与Apache Storm或Flink等实时处理框架集成,实现数据的即时分析。下面展示了一个简单的Flume配置示例,说明如何将日志数据导入HDFS进行存储。总之,Flume凭借其灵活性和强大的集成能力,在大数据处理流程中占据了重要地位。
115 3
|
8月前
|
SQL 数据采集 数据挖掘
nginx+flume网络流量日志实时数据分析实战
nginx+flume网络流量日志实时数据分析实战
200 0
|
2月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
394 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
19天前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
|
3月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
346 3