使用Fluentd和MongoDB構(gòu)建日志收集系統(tǒng)

Fluentd是一個(gè)日志收集系統(tǒng),它的特點(diǎn)在于其各部分均是可定制化的,你可以通過簡(jiǎn)單的配置,將日志收集到不同的地方。

成都創(chuàng)新互聯(lián)公司致力于互聯(lián)網(wǎng)網(wǎng)站建設(shè)與網(wǎng)站營(yíng)銷,提供網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站開發(fā)、seo優(yōu)化、網(wǎng)站排名、互聯(lián)網(wǎng)營(yíng)銷、微信小程序定制開發(fā)、公眾號(hào)商城、等建站開發(fā),成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)策劃專家,為不同類型的客戶提供良好的互聯(lián)網(wǎng)應(yīng)用定制解決方案,幫助客戶在新的全球化互聯(lián)網(wǎng)環(huán)境中保持優(yōu)勢(shì)。

本文要介紹的是在Fluentd的最新版中已經(jīng)內(nèi)置的MongoDB支持。主要通過一個(gè)收集Apache/nginx日志的例子來(lái)說明其使用方法:

機(jī)制圖解

使用Fluentd和MongoDB構(gòu)建日志收集系統(tǒng)

安裝Fluentd

設(shè)置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的最新安裝包中已經(jīng)包含了MongoDB插件,所以不需要安裝mongo插件

配置

 如果你是使用上面的deb/rpm包安裝的Fluentd,那么配置文件位置在:/etc/td-agent/td-agent.conf,否則其位置應(yīng)該在:/etc/fluentd/fluentd.conf

 首先我們編輯配置文件中的source來(lái)設(shè)置日志來(lái)源

<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

</source>


其中:

①type tail: tail方式是 Fluentd 內(nèi)置的輸入方式,其原理是不停地從源文件中獲取新的日志。

②format apache: 指定使用 Fluentd 內(nèi)置的 Apache 日志解析器。

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

④tag mongo.apache: 指定tag,tag被用來(lái)對(duì)不同的日志進(jìn)行分類

下面再來(lái)編輯輸出配置,配置日志收集后存儲(chǔ)到MongoDB中


 match標(biāo)簽后面可以跟正則表達(dá)式以匹配我們指定的tag,只有匹配成功的tag對(duì)應(yīng)的日志才會(huì)運(yùn)用里面的配置。配置中的其它項(xiàng)都比

<match mongo.**>

# 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

</match>

較好理解,看注釋就可以了,其中flush_interval是用來(lái)控制多長(zhǎng)時(shí)間將日志寫入MongoDB一次。

注意:如果是收集的是nginx日志的話,日志格式要保持默認(rèn)的。

啟動(dòng)td-agent

service td-agent start

然后我們?cè)贛ongoDB中就能看到收集到的日志了

/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") }


文章標(biāo)題:使用Fluentd和MongoDB構(gòu)建日志收集系統(tǒng)
標(biāo)題來(lái)源:http://muchs.cn/article48/gddiep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)網(wǎng)站設(shè)計(jì)公司、搜索引擎優(yōu)化、軟件開發(fā)、網(wǎng)站導(dǎo)航營(yíng)銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名