文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
工具
文件通道完整性工具
文件通道完整性工具可验证文件通道中各个事件的完整性,并删除损坏的事件。
这些工具可以按如下方式运行:
$bin/flume-ng tool --conf ./conf FCINTEGRITYTOOL -l ./datadir
其中 datadir 是要验证的数据目录的逗号分隔列表。
以下是可用选项
选项名称 | 说明 |
---|---|
h / help | 显示帮助 |
l/dataDirs | 工具必须验证的以逗号分隔的数据目录列表 |
事件验证工具
事件验证器工具可用于以特定于应用程序的方式验证文件通道事件。该工具在每个事件上应用用户提供程序验证登录,并删除未向逻辑确认的事件。
这些工具可以按如下方式运行:
$bin/flume-ng tool --conf ./conf FCINTEGRITYTOOL -l ./datadir -e org.apache.flume.MyEventValidator -DmaxSize 2000
其中 datadir 是要验证的数据目录的逗号分隔列表。
以下是可用选项
选项名称 | 说明 | |
---|---|---|
h / help | 显示帮助 | |
l/dataDirs | 工具必须验证的以逗号分隔的数据目录列表 | |
e / eventValidator | 事件验证器实现的完全限定名称。 jar 必须在 Flume classpath | 上 |
Event 验证器实现必须实现 EventValidator 接口。建议不要从实现中抛出任何异常,因为它们被视为无效事件。其他参数可以通过-D 选项传递给 EventValitor 实现。
让我们看一个基于简单大小的事件验证器的示例,它将拒绝大于指定的最大大小的事件。
public static class MyEventValidator implements EventValidator {
private int value = 0;
private MyEventValidator(int val) {
value = val;
}
@Override
public boolean validateEvent(Event event) {
return event.getBody() <= value;
}
public static class Builder implements EventValidator.Builder {
private int sizeValidator = 0;
@Override
public EventValidator build() {
return new DummyEventVerifier(sizeValidator);
}
@Override
public void configure(Context context) {
binaryValidator = context.getInteger("maxSize");
}
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论