?需要解析httpd的日志
創(chuàng)新互聯(lián)建站主營(yíng)汕尾網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都App定制開(kāi)發(fā),汕尾h5微信小程序開(kāi)發(fā)搭建,汕尾網(wǎng)站營(yíng)銷推廣歡迎汕尾等地區(qū)企業(yè)咨詢
107.106.8.237.145 - - [12/Feb/2020:15:09:52 +0800] "GET /noindex/css/fonts/Light/OpenSans-Light.ttf HTTP/1.1" 404 240 "http://39.96.45.213/noindex/css/open-sans.css" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36"
fluentd配置
解析后的效果
1、其中format 后面是正則匹配語(yǔ)句,
2、()表示捕獲分組,()會(huì)把每個(gè)分組里的匹配的值保存起來(lái),不難看出尖括號(hào)<>里面是一個(gè)key,圓括號(hào)()里的正則匹配出想要的value
3、(?:)表示非捕獲分組,和捕獲分組唯一的區(qū)別在于,非捕獲分組匹配的值不會(huì)保存起來(lái),這里大家會(huì)有疑問(wèn) (?:) 里的字符照樣被匹配出來(lái)里啊,這里有幾個(gè)特殊用法
非捕獲數(shù)組不參與編號(hào)分配但參與匹配
A:形如 (?: (exp))
也就是說(shuō)exp中按照正常的分組邏輯進(jìn)行分組
B:形如(?: ()|())
嚴(yán)格說(shuō)這樣寫(xiě)是解決選擇緩存問(wèn)題的寫(xiě)法(直接用圓括號(hào)會(huì)有一個(gè)副作用,是相關(guān)的匹配會(huì)被緩存,此時(shí)可用?:放在第一個(gè)選項(xiàng)前來(lái)消除這種副作用。)
C:形如 ((?: exp))
這種寫(xiě)法我認(rèn)為等價(jià)于(exp)
4、圓括號(hào)外的中括號(hào) []是去除一些無(wú)用字符
5、右斜杠 \ 是轉(zhuǎn)義字符
6、\S 表示非空白就匹配 +表示 匹配前面的子表達(dá)式一次或多次
7、[^ ]* 表示匹配掉所有的空字符
8、?表示非貪婪匹配,即匹配到一個(gè)符合的就ok,不再繼續(xù)匹配
9、表達(dá)式首尾有 " 表示匹配的是 "" 里的內(nèi)容
10、+ 表示匹配前面的子表達(dá)式一次或多次