博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fluentd插件rewrite-tag-filter介绍
阅读量:5029 次
发布时间:2019-06-12

本文共 1989 字,大约阅读时间需要 6 分钟。

安装方法:

gem install fluent-plugin-rewrite-tag-filter

详细文档:

https://github.com/fluent/fluent-plugin-rewrite-tag-filter       ######具体用法https://docs.fluentd.org/v1.0/articles/out_rewrite_tag_filter    ######官方文档
tag是什么?在fluentd中事件流可以通过tag来控制,filter,parse,match,label都可以筛选tag来处理对应的event
rewrite-tag根据key的值来重写tag,支持正则表达式匹配,invert支持反向匹配,可以放在末尾来匹配所有不符合上面规则的event,如下所示
@type rewrite_tag_filter capitalize_regex_backreference yes
key path pattern /\.(gif|jpe?g|png|pdf|zip)$/ tag clear
key status pattern /^200$/ tag clear invert true
key domain pattern /^.+\.com$/ tag clear invert true
key domain pattern /^maps\.example\.com$/ tag site.ExampleMaps
key domain pattern /^news\.example\.com$/ tag site.ExampleNews
key domain pattern /^(mail)\.(example)\.com$/ tag site.$2$1
key domain pattern /.+/ tag site.unmatched

注意:一旦event(叫日志也行)进入 rewrite_tag_filter中过滤,任何没有被规则匹配的记录都将丢掉,实验下来是这种效果,所以可以在最后用invert来匹配所有其他的key值情况

1.0之后,官方比较推荐用label标签,而这个插件可以和relabel结合使用,同时因为在label中可以套filter标签和match标签,可以对event再过滤一次,如果你有这种需求,

@type relabel @label @foo
使用这个插件重写tag的时候一定要注意定义好tag的格式,因为fluentd的routing是从上到下的,意思是每次要路由的时候都从上到下扫描一次,个人感觉有点类似iptables,所以如果是如下情况,会造成一个回路,无法输出
@type rewrite_tag_filter
key level pattern /(.+)/ tag app.$1
@type forward # ...

改成下面就好了

@type rewrite_tag_filter
key level pattern /(.+)/ tag level.app.$1
@type forward # ...

 

 

转载于:https://www.cnblogs.com/nieqibest/p/9926207.html

你可能感兴趣的文章
关于 UIWebView 几个高级用法
查看>>
maven创建的项目中无法创建src/main/java 解决方案
查看>>
华为软件开发云测评报告二:代码检查
查看>>
集合1
查看>>
js 原生 ajax
查看>>
关键词 virtual
查看>>
建造者模式(屌丝专用)
查看>>
UVALive 4730 Kingdom +段树和支票托收
查看>>
[APIO2010]特别行动队
查看>>
[SCOI2016]幸运数字
查看>>
SpringBoot 集成ehcache
查看>>
初步swift语言学习笔记2(可选类型?和隐式可选类型!)
查看>>
Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
查看>>
在Vs2012 中使用SQL Server 2012 Express LocalDB打开Sqlserver2012数据库
查看>>
在Macos下完美解决Adobe Dreamweaver CC 2018 汉化及操作方法
查看>>
【转】 Newtonsoft.Json高级用法
查看>>
CodeBlocks X64 SVN 编译版
查看>>
Excel催化剂开源第42波-与金融大数据TuShare对接实现零门槛零代码获取数据
查看>>
bug记录_signalr执行$.connnection.testhub结果为空
查看>>
【转】常用的latex宏包
查看>>