性夜影院午夜看片,无码精品久久一区二区三区,婷婷成人丁香五月综合激情,校园春色 qvod,性调教室高h学校

使用Logstash filter grok過(guò)濾日志文件

Logstash Filter Plugin Grok

Logstash提供了一系列filter過(guò)濾plugin來(lái)處理收集到的log event,根據(jù)log event的特征去切分所需要的字段,方便kibana做visualize和dashboard的data analysis。所有l(wèi)ogstash支持的event切分插件查看這里。下面我們主要講grok切分。

Grok基本介紹

1.Grok 使用文本片段切分的方式來(lái)切分日志事件,語(yǔ)法如下:

使用Logstash filter grok過(guò)濾日志文件

SYNTAX代表匹配值的類型,例如,0.11可以NUMBER類型所匹配,10.222.22.25可以使用IP匹配。

SEMANTIC表示存儲(chǔ)該值的一個(gè)變量聲明,它會(huì)存儲(chǔ)在elasticsearch當(dāng)中方便kibana做字段搜索和統(tǒng)計(jì),你可以將一個(gè)IP定義為客戶端IP地址client_ip_address,eg:%{IP:client_ip_address},所匹配到的值就會(huì)存儲(chǔ)到client_ip_address這個(gè)字段里邊,類似數(shù)據(jù)庫(kù)的列名,也可以把event log中的數(shù)字當(dāng)成數(shù)字類型存儲(chǔ)在一個(gè)指定的變量當(dāng)中,比如響應(yīng)時(shí)間http_response_time,假設(shè)event log record如下:

使用Logstash filter grok過(guò)濾日志文件

可以使用如下grok pattern來(lái)匹配這種記錄

使用Logstash filter grok過(guò)濾日志文件

在logstash conf.d文件夾下面創(chuàng)建filter conf文件,內(nèi)容如下

使用Logstash filter grok過(guò)濾日志文件

以下是filter結(jié)果

使用Logstash filter grok過(guò)濾日志文件

grok內(nèi)置的默認(rèn)類型有很多種,讀者可以自行查看。

2.使用自定義類型更多時(shí)候logstash grok沒(méi)辦法提供你所需要的匹配類型,這個(gè)時(shí)候我們可以使用自定義。

第一種,直接使用oniguruma語(yǔ)法去匹配文本片段,語(yǔ)法如下

使用Logstash filter grok過(guò)濾日志文件

假設(shè)你需要匹配的文本片段為一個(gè)長(zhǎng)度為10或11的十六進(jìn)制的值,使用下列語(yǔ)法可以獲取該片段,并把值賦予queue_id

使用Logstash filter grok過(guò)濾日志文件

第二種,創(chuàng)建自定義pattern文件

創(chuàng)建文件夾patterns,在此文件夾下面創(chuàng)建一個(gè)文件,文件名隨意,eg:?postfix

使用Logstash filter grok過(guò)濾日志文件

然后將patterns file引入,告訴logstash你的自定義類型文件,以下面的event log record為例子:

使用Logstash filter grok過(guò)濾日志文件

在logstash conf.d文件夾下面創(chuàng)建filter conf文件,內(nèi)容如下

使用Logstash filter grok過(guò)濾日志文件

匹配結(jié)果如下:

使用Logstash filter grok過(guò)濾日志文件

推薦使用grokdebugger來(lái)寫(xiě)匹配模式,輸入event log record,再逐步使用pattern微調(diào)切分,下方會(huì)根據(jù)你所寫(xiě)的模式將輸入切分字段。

使用Logstash filter grok過(guò)濾日志文件

使用Logstash filter grok過(guò)濾日志文件

3.其他常用內(nèi)置方法

add_field:?當(dāng)pattern匹配切分成功之后,可以動(dòng)態(tài)的對(duì)某些字段進(jìn)行特定的修改或者添加新的字段,使用%{fieldName}來(lái)獲取字段的值Exmaple:

使用Logstash filter grok過(guò)濾日志文件

使用Logstash filter grok過(guò)濾日志文件

如果somefield=dad,logstash會(huì)將foo_dad新字段加入elasticsearch,并將值Hello world, dad賦予該字段

add_tag:?為經(jīng)過(guò)filter或者匹配成功的event添加標(biāo)簽Example:

使用Logstash filter grok過(guò)濾日志文件

使用Logstash filter grok過(guò)濾日志文件

馬哥想聽(tīng)你動(dòng)人的成長(zhǎng)故事,所以發(fā)起了一個(gè)征文活動(dòng)。

點(diǎn)擊閱讀原文或長(zhǎng)按二維碼添加我的個(gè)人微信,立刻了解詳情。

使用Logstash filter grok過(guò)濾日志文件

相關(guān)新聞

歷經(jīng)多年發(fā)展,已成為國(guó)內(nèi)好評(píng)如潮的Linux云計(jì)算運(yùn)維、SRE、Devops、網(wǎng)絡(luò)安全、云原生、Go、Python開(kāi)發(fā)專業(yè)人才培訓(xùn)機(jī)構(gòu)!