通过测试 grep 插件,一起了解验证插件功能的方法
“ 本文是 filter_grep 过滤插件的使用示例,同时也演示了测试插件功能的一般性方法。 ”
Fluentd 以插件丰富著称,我们不可能了解和使用所有的插件。
在使用一个新插件之前,除了阅读文档,还应当对其功能做基本的验证性测试。
一起了解一下如何测试一个插件吧。
我们在之前的文章中介绍了 Fluentd 过滤插件 filter_grep 和 命令行工具 fluent-cat 的基本使用方法,下边就使用 fluent-cat 对 filter_grep 的用法做些实测。
【测试环境】
filter_grep 是一个比较纯粹的文本处理插件,不依赖第三方软件。
这类插件是最容易测试的,我们不需要搭建复杂的环境,只需要本地运行一个Fluentd,准备好测试数据,专注于调整插件的配置项就行了。
我的测试环境就搭建在一台安装了 Windows 10 系统的笔记本上。
Fluentd 具体安装和运行方法可以参见: 这里 。
【配置文件】
这是用到的 td-agent.conf。
<source>
@type forward
</source>
<filter foo.bar>
@type grep
<regexp>
key message
pattern /cool/
</regexp>
<regexp>
key hostname
pattern /^web\d+\.example\.com$/
</regexp>
<exclude>
key message
pattern /uncool/
</exclude>
<exclude>
key status_code
pattern /^5\d\d$/
</exclude>
</filter>
<match **>