flume入门 log4j 输出日志到flume

flume log4j日志接收 flume 安装与配置:下载flume,然后解压:tar xvf apache-flume-1.5.2-bin.tar.gz -C ./配置flume,在conf/flume-conf.properties下(没有则创建,反正有template):# example.conf: A single-node Flume configuration# Name the components on thi 阅读详情

将log4j产生的日志直接输出到flume控制台

1.编写客户端

package com.study.test;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import java.util.Date;

public class WriteLog {
    protected static final Log logger = LogFactory.getLog(WriteLog.class);


    public static void main(String[] args) throws InterruptedException {

        while (true) {
            // 每隔两秒log输出一下当前系统时间戳
            logger.info(new Date().getTime());
            //System.out.println(new Date().getTime());
            Thread.sleep(2000);
            try {
                throw new Exception("exception msg");
            }
            catch (Exception e) {
                logger.error("error:" + e.getMessage());
            }
        }
    }
}

2.pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.study.test</groupId>
    <artifactId>log4j2flume</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>org.apache.flume.flume-ng-clients</groupId>
            <artifactId>flume-ng-log4jappender</artifactId>
            <version>1.7.0</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>1.6.1</version>
        </dependency>
    </dependencies>
</project>

3. log4j.properties

log4j.rootLogger=INFO,flume
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern="%d{yyyy-MM-dd HH:mm:ss} %p [%c:%L] - %m%n

log4j.appender.flume = org.apache.flume.clients.log4jappender.Log4jAppender
log4j.appender.flume.Hostname = 10.45.17.66
log4j.appender.flume.Port = 4444
log4j.appender.flume.UnsafeMode = true
log4j.appender.flume.layout=org.apache.log4j.PatternLayout
log4j.appender.flume.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %p [%c:%L] - %m%n

4.配置flume 建立testlog2flume.conf

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

# Describe/configure the source
a1.sources.r1.type = avro
a1.sources.r1.bind =0.0.0.0
a1.sources.r1.port = 4444

# Describe the sink
a1.sinks.k1.type=logger
#a1.sinks.k1.type = file_roll
#a1.sinks.k1.sink.directory = /data/soft/flume/tmp
#a1.sinks.k1.sink.rollInterval=86400
#a1.sinks.k1.sink.batchSize=100
#a1.sinks.k1.sink.serializer=text
#a1.sinks.k1.sink.serializer.appendNewline = false

# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 1000

# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

该配置文件中 配置了一个代理a1
在代理agent中配置了一个source(源)一个sink(接收器)和一个channel(通道),分别为:r1,k1,c1
r1的类型定义为avro(序列化),对应该类型参数为bind和port 分别为0.0.0.0和4141
k1的类型定义为logger,直接输出到日志文件中
cl的类型定义为内存方式,设置其参数capactiy和transactionCapacity分别为1000和1000
指定r1和k1的channel为c1

将上述配置中a1.sinks.k1.type=logger注释,把a1.sinks其他的给打开,就是将日志输入到文件

5.到flume目录下启动flume

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

flume-ng :flume 命令
agent:运行一个Flume Agent
-c:在指定目录下使用配置 use configs in directory
-f:指定配置文件,这个配置文件必须在全局选项的–conf(-c)参数定义的目录下
–name:Agent的名称(必填)
-Dflume.root.logger=INFO,console 该参数将会把flume的日志输出到console

主流反爬虫、反作弊防护与风控对抗手段 主流反爬虫、反作弊风控防护中的核心设计点与对抗策略 阅读详情

相关推荐

Gromacs基础教程一:入门建议

本系列教程针对的群体:非计算化学专业,而是偏生物方向的、有少量分子动力学模拟需求的人群。

m0_67843839的博客 8574

flume使用(三):实时log4j日志通过flume输出到MySql数据库

flume使用(一):入门demo flume使用(二):采集远程日志数据到MySql数据库本文在【flume使用(二):...

maoyuanming0806的博客 3173

【保姆级教程/代码】使用PRIDE PPP-AR软件解算ZTD、反演GNSS PWV,并评估精度

在本算例中,我下载了BJFS站2024年的IGS ZTD产品,用于评估PRIDE PPP-AR软件解算出ZTD结果的精度。

weixin_43910227的博客 2376

log4j+flume+kafka实时日志处理

将项目中的日志使用log4j打印,然后使用avro方式,收集到flume,最后输出到kafka。flume官方提供了两种方式接受log4j输入源的方式:Log4J Appender和Load Balancing Log4J Appender,flume详情可查看官网:Welcome to Apache Flume — Apache Flume。 一、appender 1)Log4J Appender参数解释 Property Name Default Descripti......

NDF923的专栏 2404

嵌入式C开发必备:用Cursor规则搞定代码风格检查(附Pikachu项目实战)

本文以Pikachu开源项目为例,详细介绍了如何利用Cursor的AI代理规则系统,为嵌入式C开发项目配置一套完整的代码风格检查与规范执行方案。通过实战演示,指导开发者创建项目级规则,实现命名、格式、硬件抽象层及驱动开发的自动化规范,从而提升代码一致性、可维护性和团队协作效率。

weixin_29181861的博客 602

shopee app算法分析第一篇

shopee app算法分析第一篇分析完整算法大概要好几篇,耐心等待下.国内只会发律师函,牛逼,一个律师套话,一个律师发函,大意了(警惕卡通律师头像),希望law可以保护好你,还是干国外好.

2533

flume学习03-flume收集log4j日志

前几篇已经介绍了flume相关的知识,包括flume架构、如何配置启动以及暂停,接下去主要说说flume接受log4j日志。 前面介绍过了log4j需要用avro的方式讲日志传递到flume,所以我们的配置都是基于avro的sourcelog4j日志输出到flume的console 修改配置文件log4j-agent.properties # distributed with this work

Cumu Blog 9078

1篇2章1节:在 Mac 上安装 Python,从环境检查到工具配置的完整指南

Python 是当今最流行的高级编程语言之一,广泛应用于数据分析、人工智能、自动化脚本和 Web 开发。虽然 macOS 曾自带 Python,但从 macOS 12.3 开始,系统不再默认提供可直接使用的版本,因此需要手动安装。本文将详细讲解如何在 Mac 上安装最新版本的 Python,如何验证安装是否成功,以及如何配置 IDLE 和 Python Launcher 等工具,为日常开发和学习打下坚实基础。即便你是完全的新手,也能按步骤完成环境搭建。

MD Code 851

flume_log4j

1.  Log4j Appender 1.1.  使用说明 1.1.2.  Client端Log4j配置文件 (黄色文字为需要配置的内容) log4j.rootLogger=INFO,A1,R     # ConsoleAppender out log4j.appender.A1=org.apache.log4j.ConsoleAppender log4j

Java_Soldier的博客 2610

模型实战(32)之 yolo26 实现对全身关键点数据集 的训练与关键点检测

模型实战(32)之 yolo26 实现对全身关键点数据集 的训练与关键点检测

yohnyang的博客 90

《Zephyr OS 入门与实战》第3章:第一个 Zephyr 程序 - Blinky 实战

解决方法:确认设备树overlay文件已正确加载。返回值,确认驱动初始化状态。

2301_79143213的博客 542

flume学习(一):log4j直接输出日志到flume

log4j.properties配置:log4j.rootLogger=INFOlog4j.category.com.besttone=INFO,flumelog4j.appender.flume = org.apache.flume.clients.log4jappender.Log4jAppenderlog4j.appender.flume.Hostname = localhostlog4j...

xiaomin1991222的专栏 256

AM芯片性能测试

目前车载FM&AM没有明确的国标,因此各家测试项目可能不同,最主要测试标准比较混乱,多是根据具体芯片的规格书以及与芯片厂商协商。信号发生器:R&S SMCV100B音频分析仪:R&S UPV AUDIO AYALYZER DC 250KHZ(AP的也可以)专用USB-I2C控制模块(不同芯片控制模块不同,例如SPI或UART的控制模块)卡农线(针对模拟声道输出,+接左/右声道,-接GND,地可接GND也可悬空)

qflook的博客 903

log4j+flume+HDFS实现日志存储

log4j  日志生成flume  日志收集系统,收集日志,使用版本apache-flume-1.6.0-bin.tar.gz .HDFS  Hadoop分布式文件系统,存储日志,使用版本hadoop-3.0.0-alpha1.tar.gz 部署在同一台虚拟机,虚拟机IP:10.34.11.65,hosts配置如下: HDFS配置 hadoop安装配置 hado

sum__mer的专栏 5641

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Flume-ng在windows环境搭建并测试+log4j日志通过Flume输出到HDFS

首先,去Flume官网下载最新的版本 这里我使用的是apache-flume-1.6.0-bin.tar.gz 开发环境 系统:window7 Jdk:1.7 Flume:1.6.0 Hadoop:2.5.2 一、下载flume并解压安装配置 下载解压到你想要的目录 配置环境变量 新建FLUME_HOME变量,填写flume安装目录,如图 然后编辑系统变

码蚁君 5129

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

log4j产生日志到flume及log4j为何无法产生日志到flume

log4j产生日志到flume,log4j无法产生日志到flume

WGBLW的博客 1356

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

log4j直接输出日志到flume,并保存到hdfs

1.flume简介    是分布式日志收集系统,用于高效收集、汇聚和移动大规模日志信息从多种不同的数据源到一个集中的数据存储中心(HDFS HBASE)    多种数据源:console、RPC、Text 、Tail、syslog等 2.log4j直接输出到flume-flume配置:a1.sources=r1a1.channels=c1a1.sinks=k1#configure the sour...

hzs33的博客 2515

windows部署log4j输出日志给flume

package com.flume; import org.apache.log4j.Logger; public class Logsc {    // java日志生产          private static Logger log = Logger.getLogger(Logsc.class.getName());     static int value=0;     publi...

m0_37847641的博客 1123

Log4J日志输出到flume中

1:添加依赖 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.25</version> </dependency> <dependency> ...

qq_19248335的博客 290

log4j输出日志到flume

Log4JAppender和LoadBalancingLog4jAppender可以将应用服务器的日志通过AvroSource实时的把日志传输到日志服务器,然后在传输到监控系统或者是HDFS中存储,FLume的Log4JAppender和LoadBalancingLog4jAppender必须使用Log4j的异步加载器,否则日志服务器down机,将会导致应用服务器异常,影响线上环境的使用。 应

浅汐 257

Flume之Log4JAppender接收Log4j日志

简介 Log4JAppender和LoadBalancingLog4jAppender可以将应用服务器的日志通过AvroSource实时的把日志传输到日志服务器,然后在传输到监控系统或者是HDFS中存储,FLume的Log4JAppender和LoadBalancingLog4jAppender必须使用Log4j的异步加载器,否则日志服务器down机,将会导致应用服务器异常,影响线上环境的使用。...

qianshanding0708的博客 6590

使用log4j输出日志到flume报错

严重: Allocate exception for servlet LogServlet java.nio.channels.UnresolvedAddressException at sun.nio.ch.Net.checkAddress(Net.java:127) at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImp...

Diana的博客 572

使用Flume采集Log4j产生的日志

版本:Flume1.6.0 1.首先加入log4j to flume appender <!-- log4j 与 flume-ng做通信 --> <dependency> <groupId>org.apache.flume.flume-ng-clients</groupId> ...

彪悍大蓝猫的博客 1529

flume从log4j收集日志输出到kafka

1. flume安装 (1)下载:wget http://archive.cloudera.com/cdh5/cdh/5/flume-ng-1.6.0-cdh5.7.1.tar.gz (2)解压:tar zxvf flume-ng-1.6.0-cdh5.7.1.tar.gz (3)环境变量: export FLUME_HOME=/xxx/soft/apache-flume-1...

anxia5150的博客 393
上一篇: MySQL EXPLAIN详解
下一篇: java volatile关键字
poorCoder_
博客等级 码龄10年 129粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值