如何使用流利的自定义属性将Apache Combined Log写入mongoDB

时间:2012-05-19 00:53:20

标签: apache mongodb logging fluentd

我正在使用tail和fluent-plugin-mongo将Apache组合日志格式写入mongoDB,但我想自定义一些属性格式以写入mongoDB,例如

  • 分割新属性的路径

{

ip : 21.18.104.8
host : www.sample.com
message : buildtime=2012_02_14_16_25;version=01.03.3752;totalTimeMin=0;

}

{

ip : 21.18.104.8
host : www.sample.com 
message : buildtime=2012_02_14_16_25;version=01.03.3752;totalTimeMin=0;
buildtime : 2012_02_14_16_25
version : 01.03.3752
totalTimeNin : 0

}

  • 从ISODate更改日期时间格式(“2011-11-27T07:56:34Z”改为“2011-11-27 07:56:34”

  • 天花板时间戳到最近的5分钟,例如。 12:33:22 =>十二时35分00秒

  • 添加一些功能,例如来自

{

ip : 69.249.69.211
host : www.sample.com
message : buildtime=2012_02_14_16_25;version=01.03.3752;totalTimeMin=0;

}

{

ip :  69.249.69.211
country : US
host : www.sample.com
message : buildtime=2012_02_14_16_25;version=01.03.3752;totalTimeMin=0;

}

这可能吗?我没有任何想法,我应该使用哪些插件。 我已经阅读了文档,但由于没有很多例子,我没有得到它。

1 个答案:

答案 0 :(得分:1)

您可以扩展in_tail插件以实现目标。以下网址描述了如何操作。

  

http://docs.fluentd.org/articles/plugin-development#custom-parser-for-tail-input-plugin

如果您有任何疑问,请在此处或Google网上论坛询问。谢谢-K