使用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") }






相关内容

热门资讯

今日重大通报“同城游比鸡开挂器... 家人们!今天小编来为大家解答同城游比鸡透视挂怎么安装这个问题咨询软件客服徽9784099的挂在哪里买...
今日重大通报“众合推扑克辅助器... 家人们!今天小编来为大家解答众合推扑克透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里买...
终于懂了“财神十三张究竟有挂吗... 您好:财神十三张这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款游...
【第一财经】“途游竞技到底有挂... 有 亲,根据资深记者爆料途游竞技是可以开挂的,确实有挂(咨询软件无需打开...
【今日要闻】“九九牌游十三水有... 【今日要闻】“九九牌游十三水有没有挂?”(果然有透视挂)您好,九九牌游十三水这个游戏其实有挂的,确实...
【今日要闻】“开心泉州麻将有没... 家人们!今天小编来为大家解答开心泉州麻将透视挂怎么安装这个问题咨询软件客服徽9784099的挂在哪里...
玩家最新攻略“中至余干麻将怎么... 有 亲,根据资深记者爆料中至余干麻将是可以开挂的,确实有挂(咨询软件无需...
重磅消息“快乐竞技辅助器?”(... 家人们!今天小编来为大家解答快乐竞技透视挂怎么安装这个问题咨询软件客服徽9784099的挂在哪里买很...
知名女艺人发文:跑1000公里... 今天(12月28日),颜如晶发布视频,宣布自己的2025年减肥成果,答案出乎意料:竟然是0斤。
今日重大通报“个旧麻将怎么开挂... 家人们!今天小编来为大家解答个旧麻将透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里买很...