为 Flume-ng 编写自定义 HTTPSource 处理程序

2024-05-06

是否有任何资源可以帮助我为 Flume-ng 的 HTTPSource 编写自定义处理程序。我阅读了文档,其中有一个 Json 示例处理程序,但我想知道是否有人需要编写一个处理程序来从 XML 消息正文创建 Flume 事件。 HttpSource 现在在 Flume-ng 1.3.1 中可用,但我们需要处理程序来解释我们的数据。

Thanks.


你看过吗JSONHandler 源码 https://git-wip-us.apache.org/repos/asf?p=flume.git;a=blob;f=flume-ng-core/src/main/java/org/apache/flume/source/http/JSONHandler.java;h=197f66a827058af2a4e5d76c1dbfb82a3504c683;hb=HEAD? XMLHandler 的唯一区别是使用一些 XML 反序列化器而不是 Gson。

你只需要转换类似的东西:

<dataList>
  <data>
     ...
  </data>
  <data>
     ...
  </data>      
</dataList>

进入列表简单事件> (或者引入您自己的 HTTPEvent,就像 Flume 开发人员所做的那样JSON事件 https://git-wip-us.apache.org/repos/asf?p=flume.git;a=blob;f=flume-ng-sdk/src/main/java/org/apache/flume/event/JSONEvent.java;h=5c6c0d40702c5b2502a528cf1827066646234a76;hb=HEAD,如果您需要处理不同的编码)。这些事件的主体将包含您的<data>..</data>块为字符串的字节表示 http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#getBytes%28java.lang.String%29.

我不建议在 Flume 中实现解析这些事件的任何额外业务逻辑,因为业务规则往往会经常变化,而 Flume 作为基础设施软件应该是稳定的。

最后,将代码打包到 jar 中,将该 jar 放入 Flume 的 lib 目录中(对于 Cloudera 的 rpm 发行版,为 /usr/lib/flume-ng/lib ),在 Flume.conf 中将 HTTPSource 的“handler”属性指定为“com. vicky.flume.source.http.XMLHandler”(或类似的东西),重新启动代理即可。

希望这可以帮助。将很高兴回答您的问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为 Flume-ng 编写自定义 HTTPSource 处理程序 的相关文章

  • 记flume部署过程中遇到的问题以及解决方法(持续更新)

    项目需求是将线上服务器生成的日志信息实时导入kafka xff0c 采用agent和collector分层传输 xff0c app的数据通过thrift传给agent xff0c agent通过avro sink将数据发给collector
  • Flume基础知识(个人总结)

    声明 1 本文为我的个人复习总结 并非那种从零基础开始普及知识 内容详细全面 言辞官方的文章 2 由于是个人总结 所以用最精简的话语来写文章 3 若有错误不当之处 请指出 概述 Flume用于离线日志的 采集与传输 Agent 单台机器a1
  • Flume EmbeddedAgent

    flume flume 二次开发 对EmbeddedAgent的简易改造 动态控制agent 实现启动 关闭等功能 模块结构如下所示 flume parent github地址 1 用途 1 1 本地调试 对flume不是特别熟悉的开发者
  • 几十条业务线日志系统如何收集处理?

    在互联网迅猛发展的今天 各大厂发挥十八般武艺的收集用户的各种信息 甚至包括点击的位置 我们也经常发现自己刚搜完一个东西 再打开网页时每个小广告都会出现与之相关联的商品或信息 在感叹智能的同时不惊想 什么时候泄露的行踪 许多公司的业务平台每天
  • Flume系统搭建和使用的一些经验总结-搭建篇

    对于很多公司来说 日志的收集和集中管理是一个必然要经历的阶段 我们公司在经历了一拖再拖之后 终于不得不开始搭建日志收集系统了 对于日志收集系统 我们的首选就是Flume 为何这么坚决呢 难道没有其他工具能做个这个事情么 当然有 不过 考虑到
  • flume采集log4j日志到kafka

    简单测试项目 1 新建Java项目结构如下 测试类FlumeTest代码如下 package com demo flume import org apache log4j Logger public class FlumeTest priv
  • Flume 数据流监控——Ganglia的安装与部署

    1 Ganglia的安装 1 安装 dhttpd 服务与 php yasin hadoop102 flume sudo yum y install httpd php 2 安装其他依赖 atguigu hadoop102 flume sud
  • 自定义flume拦截器-实现了多种功能

    1 自定义拦截器实现说明 1 实现interceptor接口 并实现其方法 接口完全限定名为 org apache flume interceptor Interceptor 2 自定义拦截器内部添加静态内部类 实现Builder接口 并实
  • 大数据组件-Flume集群环境的启动与验证

    大数据学习记录篇 持续更新中 个人主页 beixi 本文章收录于专栏 点击传送 大数据学习 持续更新中 感谢各位前辈朋友们支持学习 上一篇文章写到了Flume集群环境的安装 这篇文章接着上篇文章延伸Flume集群环境的启动与验证 如果Flu
  • flume实验

    1 上传flume ng 1 5 0 cdh5 3 6 tar gz 至 opt modules cdh 并解压 2 编辑 conf flume env sh export JAVA HOME usr java jdk1 7 0 79 3
  • Flume 学习

    开始启动flume的学习 todo
  • Flume-ng 拖尾文件

    我试图了解如何使用 Flume ng 尾部文件 以便可以将数据推送到 HDFS 中 在第一个实例中 我设置了一个简单的conf文件 tail1 sources source1 tail1 sinks sink1 tail1 channels
  • Flume HDFS Sink 在 HDFS 上生成大量小文件

    我有一个使用 Flume 向 HDFS 发送 log4j 消息的玩具设置 我无法配置 hdfs 接收器以避免出现许多小文件 我以为我可以配置 hdfs 接收器在每次文件大小达到 10mb 时创建一个新文件 但它仍然创建大约 1 5KB 的文
  • 在接收器发生故障后,如何强制 Flume-NG 处理积压的事件?

    我正在尝试设置 Flume NG 从一组服务器 主要运行 Tomcat 实例和 Apache Httpd 收集各种日志 并将它们转储到 5 节点 Hadoop 集群上的 HDFS 中 设置如下所示 每个应用程序服务器将相关日志跟踪到一个执行
  • Flume - 整个文件可以被视为 Flume 中的一个事件吗?

    我有一个用例 需要将目录中的文件提取到 HDFS 中 作为 POC 我在 Flume 中使用了简单的目录假脱机 其中我指定了源 接收器和通道 并且它工作得很好 缺点是我必须为进入不同文件夹的多种文件类型维护多个目录 以便更好地控制文件大小和
  • 由于 JAR 冲突,无法运行 Flume

    我已经手动安装了 Flume 和 Hadoop 我的意思是 不是 CDH 并且我正在尝试运行 twitterexample https github com cloudera cdh twitter example来自Cloudera In
  • 使用具有正斜杠的密钥连接到 s3 接收器时出现无效主机名错误

    我有一个forward slash在 aws 密钥中 当我尝试连接到 s3 接收器时 Caused by java lang IllegalArgumentException Invalid hostname in URI s3 xxxx
  • 运行 fatjar 时无法加载 log4j2

    我正在开发一个使用 log4j2 日志记录的项目 在 intellij 中开发时 一切正常 并且日志记录按预期完成 log4j2 xml 通过在启动时通过 intellij 设置传递给 jvm 的 java 属性进行链接 但是一旦我尝试运行
  • 并行读取 Flume spoolDir

    由于我不允许在产品服务器上设置 Flume 因此我必须下载日志 将它们放入 Flume spoolDir 中 并有一个接收器从通道中使用并写入 Cassandra 一切正常 但是 由于 spoolDir 中有很多日志文件 并且当前设置一次仅
  • 如何有效地将数据从 Kafka 移动到 Impala 表?

    以下是当前流程的步骤 Flafka http blog cloudera com blog 2014 11 flafka apache flume meets apache kafka for event processing 将日志写入

随机推荐