使用Fluentd + MongoDB构建实时日志收集系统
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,Fluentd是一个日志收集系统,它的特点在于其各部分均是可定制化的,你可以通过简单的配置,将日志收集到不同的地方。 目前开源社区已经贡献了下面一些存储插件:MongoDB, Redis, Couch
千家信息网最后更新 2025年11月07日使用Fluentd + MongoDB构建实时日志收集系统Fluentd是一个日志收集系统,它的特点在于其各部分均是可定制化的,你可以通过简单的配置,将日志收集到不同的地方。 目前开源社区已经贡献了下面一些存储插件:MongoDB, Redis, CouchDB,Amazon S3, Amazon SQS, Scribe, 0MQ, AMQP, Delayed, Growl 等等。 本文要介绍的是在Fluentd的最新版中已经内置的MongoDB支持。主要通过一个收集Apache日志的例子来说明其使用方法:机制图解
翻译: http://blog.nosqlfan.com/html/3521.html
机制图解
安装
为了完成相关的测试,需要安装下面一些组件:- Fluentd with MongoDB Plugin
- MongoDB
- Apache (with the Combined Log Format)
gem install fluent-plugin-mongo来进行安装
- Debian Package
- RPM Package
- MongoDB Downloads
配置
如果你是使用上面的deb/rpm包安装的Fluentd,那么配置文件位置在:/etc/td-agent/td-agent.conf,否则其位置应该在:/etc/fluentd/fluentd.conf 首先我们编辑配置文件中的source来设置日志来源其中:type tail format apache path /var/log/apache2/access_log tag mongo.apache
- type tail: tail方式是 Fluentd 内置的输入方式,其原理是不停地从源文件中获取新的日志。
- format apache: 指定使用 Fluentd 内置的 Apache 日志解析器。
- path /var/log/apache2/access_log: 指定日志文件位置。
- tag mongo.apache: 指定tag,tag被用来对不同的日志进行分类
match标签后面可以跟正则表达式以匹配我们指定的tag,只有匹配成功的tag对应的日志才会运用里面的配置。配置中的其它项都比较好理解,看注释就可以了,其中flush_interval是用来控制多长时间将日志写入MongoDB一次。# plugin type type mongo # mongodb db + collection database apache collection access # mongodb host + port host localhost port 27017 # interval flush_interval 10s
测试
用ab工具对Apache进行访问,以产生相应的访问日志以供收集$ ab -n 100 -c 10 http://localhost/然后我们在MongoDB中就能看到收集到的日志了
$ mongo> use apache> db.access.find(){ "_id" : ObjectId("4ed1ed3a340765ce73000001"), "host" : "127.0.0.1", "user" : "-", "method" : "GET", "path" : "/", "code" : "200", "size" : "44", "time" : ISODate("2011-11-27T07:56:27Z") }{ "_id" : ObjectId("4ed1ed3a340765ce73000002"), "host" : "127.0.0.1", "user" : "-", "method" : "GET", "path" : "/", "code" : "200", "size" : "44", "time" : ISODate("2011-11-27T07:56:34Z") }{ "_id" : ObjectId("4ed1ed3a340765ce73000003"), "host" : "127.0.0.1", "user" : "-", "method" : "GET", "path" : "/", "code" : "200", "size" : "44", "time" : ISODate("2011-11-27T07:56:34Z") }来源: blog.treasure-data.com翻译: http://blog.nosqlfan.com/html/3521.html
日志
配置
位置
文件
不同
插件
方式
来源
存储
测试
系统
成功
使用方法
例子
原理
只有
可以通过
命令
地方
工具
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
公司如何保护云服务器安全
福州智慧校园软件开发
汇报网络安全工作情况
uniapp接收服务器通知
delete数据库会锁表吗
软件开发项目评审流程图
温州软件开发驻场怎么样
软件开发服务都包括什么科目
工行软件开发外包
数据库图形界面管理器
网络安全中队周报
云服务器低价
计算机三级网络技术准考证
有线网络安全性的特点
网络安全员日记
vb提取股票数据库
成本数据库应用场景
淮阴区吧乐吧网络技术服务部
squad僵尸服务器一直加载中
吉林通信软件开发服务参考价格
网络技术专业好考么
黑龙江电信服务器云主机
提升金融网络安全水平的思考
4路刀片服务器
asp程序连接数据库
亿凯西安软件开发工资
我的世界暑期必玩的三个服务器
php 获取服务器环境
北京企业软件开发服务价格
手机无法登录网络服务器