利用Eclipse对Flume进行远程调试分析环境搭建

准备工作:

1、到Flume官网下载apache-flume-1.8.0-bin.tar.gz

2、下载代码:https://github.com/javabigdataxin/FlumeExtend

在Flume的conf目录新建一个RollingFileSink.conf文件

a1.sources = r1
a1.sinks = k1
a1.channels = c1
 
# 配置sources
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 6666
 
# 配置sink
a1.sinks.k1.type = com.flumeextend.RollingFileSink
a1.sinks.k1.sink.directory = G:\\apache-flume-1.8.0-bin\\RollingFileSinkTest
a1.sinks.k1.sink.rollInterval=0
a1.sinks.k1.sink.batchSize=100
a1.sinks.k1.sink.serializer=TEXT
a1.sinks.k1.sink.serializer.appendNewline = true
 
# 配置channel
a1.channels.c1.type = file
a1.channels.c1.checkpointDir = G:\\apache-flume-1.8.0-bin\\checkpoint
a1.channels.c1.dataDirs = G:\\apache-flume-1.8.0-bin\\data
 
# 将三者串联
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

开启FLume远程调试:

在bin目录下的flume-ng.ps1文件,增加以下配置:

$JAVA_OPTS="-Xmx100m -Xdebug -Xrunjdwp:transport=dt_socket,address=8888,server=y,suspend=y"

打开CMD命令行,执行以下命令,启动Flume Agent:

cd G:\apache-flume-1.8.0-bin\bin
 
.\flume-ng.cmd agent --conf ../conf  --conf-file ../conf/RollingFileSink.conf --name a1 --property flume.root.logger=INFO,console
 

会出现:Listening for transport dt_socket at address: 8888

到Eclipse中开启flume远程调试:

打好断点:

点击Debug,就可以开始调试我们自己写的Flume插件了:

使用telnet给Flume发送一个event

新打开一个终端,输入命令:

telnet localhost 6666

在Eclipse中先打好断点:

输入Hello World,之后可以在Eclipse中打断点调试啦!

原文地址:https://www.cnblogs.com/yangcx666/p/11219921.html

时间: 2024-07-30 22:53:28

利用Eclipse对Flume进行远程调试分析环境搭建的相关文章

Eclipse + CDT + YAGARTO + J-Link,STM32开源开发环境搭建与调试

Eclipse+CDT+YAGARTO+J-Li:开源开发环境搭建与调试:作者:Chongqing:邮箱:[email protected]:文档版本:V1.0:发布日期:2014-08-04:前言:此文档本着开源精神,基于LGPL协议发布:因网上开源的单片机.微控制器开发平台信息很少,故:因用ARM公司的KeiluVision开发环境开:因Eclipse是一个 Eclipse + CDT + YAGARTO + J-Link,STM32 开源开发环境搭建与调试 作者 :Chongqing 邮箱

安卓程序分析环境搭建

windos分析环境搭建 温馨提示:今后我们用到的环境都会采用windows xp 32位系统 1. jdk Oracle官网下载处:http://www.oracle.com/technetwork/java/downloads/index.html   下面的是我自己找的jdk: jdk8(Win7系统):                                     http://yunpan.cn/cVsC8j7s6e9BY  访问密码 b89f jdk6:(XP系统)    

开启flume的远程调试功能

各种组件,比如tomcat.storm.flume,我们都可以通过JMX方式开启远程调试,主要可以用来跟踪源码,了解程序内部的运行机制,其次,也有利于你修改源码. 首先,本质上是要修改flume本身启动的配置文件的jvm配置部分. 找到flume目录下的bin文件夹,下面会有个flume-ng文件,这便是flume本身启动脚本所在,找到如下部分: # set default params FLUME_CLASSPATH="" FLUME_JAVA_LIBRARY_PATH="

window8.1编译hadoop2 eclipse插件,并远程调试hadoop程序

一.编译hadoop2 eclipse插件     1.安装ant 2.准备eclipse插件包,下载地址:http://pan.baidu.com/s/1i3myDvv 或者https://github.com/nemotan/hadoop2x-eclipse-plugin 3.解压插件包,进入主目录执行: ant jar -Dversion=2.6.0 -Declipse.home=F:\tool\eclipse-jee-juno-SR2\eclipse-jee-juno-SR2 -Dhad

eclipse下的jetty远程调试设置

在windows下的jetty远程调试设置1.首先说明的是windows下的jetty是通过命令java  -jar start.jar来启动的,因此要想设置成远程调试模式,则要改用命令java -Xdebug -Xrunjdwp:transport=dt_socket,address=10001,server=y,suspend=n -jar start.jar来启动,其中该命令中的address就是调试端口号. 在linux下配置jetty的远程调试: 1.如果linux下也是使用命令jav

.NET C#微信公众号开发远程断点调试(本地远程调试生产环境)

最近在做微信公众号开发,由于之前没有接触过,突然发现调试不方便,不方便进行断点跟踪调试.因为微信那边绑定的服务器地址必须是公网地址,但是还是想进行断点调试(毕竟这样太方便了) 因此上网搜了一下,发现好多是使用软件之类的进行请求转发从生产环境转发请求到开发环境上,发现有的太麻烦了. 突然想到Vs有一个附加到进程的远程调试.于是玩了一把.我们直接开始(服务器上就不要使用发布版本代码了,代码和本地开发一样,不然是不能调试的) 本篇是以开发环境的Visual Studio2013旗舰版以及生产环境里阿里

SSH框架总结(框架分析+环境搭建+实例源代码下载)

首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是眼下较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. 集成SSH框架的系统从职责上分为四层:表示层.业务逻辑层.数据持久层和域模块层(实体层). Struts作为系统的总体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持.Spring一方面作为一个轻量级的IoC容器,负责查找.定位.创建和管理对象及

SSH框架总结(框架分析+环境搭建+实例源码下载)

首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. 集成SSH框架的系统从职责上分为四层:表示层.业务逻辑层.数据持久层和域模块层(实体层). Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持.Spring一方面作为一个轻量级的IoC容器,负责查找.定位.创建和管理对象及

SSH框架总结(框架分析+环境搭建+实例源码下载) 《转》

这篇文章比较易懂,易理解: 首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. 集成SSH框架的系统从职责上分为四层:表示层.业务逻辑层.数据持久层和域模块层(实体层). Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持.Spring一方面作为一个轻量级的IoC容器,负责