使用Fluentd和MongoDB构建日志收集系统
admin
2023-04-13 16:41:34
0

Fluentd是一个日志收集系统,它的特点在于其各部分均是可定制化的,你可以通过简单的配置,将日志收集到不同的地方。

本文要介绍的是在Fluentd的最新版中已经内置的MongoDB支持。主要通过一个收集Apache/nginx日志的例子来说明其使用方法:

机制图解



使用Fluentd和MongoDB构建日志收集系统



安装Fluentd

设置yum源

vi /etc/yum.repos.d/td.repo

[treasuredata]

name=TreasureData

baseurl=http://packages.treasure-data.com/redhat/x86_64/

gpgcheck=1

gpgkey=http://packages.treasure-data.com/redhat/RPM-GPG-KEY-td-agent


yum clean all

yum makecache

yum -y install td-agent

在Fluentd的最新安装包中已经包含了MongoDB插件,所以不需要安装mongo插件

配置

  如果你是使用上面的deb/rpm包安装的Fluentd,那么配置文件位置在:/etc/td-agent/td-agent.conf,否则其位置应该在:/etc/fluentd/fluentd.conf

  首先我们编辑配置文件中的source来设置日志来源

 type tail

 format apache

 pos_file /var/log/td-agent/nginx-access.log.pos

 path /usr/local/nginx/logs/www.access.log

 tag mongo.apache


其中:

①type tail: tail方式是 Fluentd 内置的输入方式,其原理是不停地从源文件中获取新的日志。

②format apache: 指定使用 Fluentd 内置的 Apache 日志解析器。

③path /var/log/apache2/access_log: 指定日志文件位置。

④tag mongo.apache: 指定tag,tag被用来对不同的日志进行分类

下面再来编辑输出配置,配置日志收集后存储到MongoDB中



  match标签后面可以跟正则表达式以匹配我们指定的tag,只有匹配成功的tag对应的日志才会运用里面的配置。配置中的其它项都比

# plugin type

type mongo

# mongodb db + collection

database apache

collection access

# mongodb host + port

host 192.168.30.113

port 3306

# interval

flush_interval 10s

较好理解,看注释就可以了,其中flush_interval是用来控制多长时间将日志写入MongoDB一次。

注意:如果是收集的是nginx日志的话,日志格式要保持默认的。

启动td-agent

service td-agent start


然后我们在MongoDB中就能看到收集到的日志了

/usr/local/mongodb/bin/mongo 192.168.30.113:3306


MongoDB shell version: 2.0.4

connecting to: 192.168.30.113:3306/test

> use apache

switched to db apache

> db.access.find()

{ "_id" : ObjectId("530fee3753357d2437000001"), "host" : "192.168.30.1", "user" : "-", "method" : "GET", "path" : "/api?callback=jQuery172014558692439459264_1393552941396&do=show_workspace&MEMBER_ID=80&os=w&webtoken=1b43342c1f&_=1393552941501", "code" : "301", "size" : "178", "referer" : "http://www.weiduoa.com/", "agent" : "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36", "time" : ISODate("2014-02-28T02:02:29Z") }

{ "_id" : ObjectId("530fee3753357d2437000002"), "host" : "192.168.30.1", "user" : "-", "method" : "GET", "path" : "/api?callback=jQuery172014558692439459264_1393552941397&do=inboxmemberlist&MEMBER_ID=80&os=w&webtoken=1b43342c1f&_=1393552941505", "code" : "301", "size" : "178", "referer" : "http://www.weiduoa.com/", "agent" : "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36", "time" : ISODate("2014-02-28T02:02:29Z") }






相关内容

热门资讯

员工用企业账号向顾客发送“有偿... “5000陪我一晚上有时间吗?”近日,贵阳一沪上阿姨门店的企业成员账号给顾客发送“有偿陪睡”信息一事...
一枚鸡蛋的价值跃升之旅(合力奋... □本报全媒体记者 陈晨 蒋晓芳 本报通讯员 范鑫 一枚普通的鸡蛋,在科技创新的加持下,能释放出多大能...
四川省省长施小琳:将“人工智能... 中新社成都5月11日电 (单鹏 程兆 王鹏)四川省省长施小琳11日在成都表示,四川将“人工智能+”作...
75个OpenAI打工人,一夜... ▲头图由AI辅助生成 智东西 编译 | 陈佳 编辑 | 漠影 智东西5月11日消息,今日,据《华尔街...
英媒披露:美国要求在格陵兰新开... 【文/观察者网 王一】美国总统特朗普仍没有放弃他对格陵兰岛的野心。据英国广播公司(BBC)5月12日...
南京审计大学一男生被曝在校内偷... 南京审计大学5月12日通报:2026年5月11日晚,有网友在网络平台反映我校某学生涉嫌偷拍他人隐私。...
告别“从摇篮到坟墓”保障?“瑞... 【文/观察者网 柳白】那个人们熟知的,以“从摇篮到坟墓”保障著称的高福利国家瑞典,正在悄然发生变化。...
以算电协同赋能新型能源体系 来源:经济日报 “十五五”时期是我国基本实现社会主义现代化夯实基础、全面发力的关键时期,也是我国加快...
原创 芯... 文/王新喜 近期,中芯国际创始人张汝京在采访中表示,认为在半导体行业取得成功就必须能够制造3nm或2...
Maximo机器人太阳能安装系... Maximo是由AES公司孵化的太阳能机器人企业,近日宣布在AES位于加州克恩县加州城附近的Bell...