ELK搭建流程 從0到1 包含過程中遇到的問題

2021-08-31 23:51:27 字數 2579 閱讀 1091

問題彙總

kibana

logstash

elasticsearch api操作

寫點什麼

閒言碎語不要講,開始!

jdk1.8以上

elasticsearch 啟動時不能以 root 使用者啟動

防火牆是否關閉

是否開啟了**ip(我就是為了 谷歌搜尋 然後開啟了 **ip,通過 內網ip始終訪問不到 elasticsearch,一度懷疑人生)

在 elasticsearch.yml 檔案中新增如下配置

主要是因為我在 elasticsearch 中建立資料型別(type)時如下

,"ip":,

"request":,

"param":}

}

後來修成成

,"ip":,

"request":,

"param":}

}

猜測原因是因為 text 不會沒有建立索引規則,keyword會生成索引規則

這裡有個時間範圍,我剛開始沒找到是這個原因,一直查詢不到資料,可急死我了。

這個元件問題最多,花了我最多的時間,一度想替換成其他日誌採集的工具,但是好像只有這貨 能很好的把日誌解析成與 elasticsearch 中定義的字段 相對應

不吐不快! 我等他啟動了快5分鐘,然後報錯說配置檔案有問題,啟動失敗,當時真是…

但是在我這裡沒一點用。

bin/logstash -f test.conf -r

這個還比較靠譜,我修改的基本也就是配置檔案,通過這個熱載入配置檔案,基本只需要啟動一次就好了

大概樣子

grok \|%\|%\|%"}

}}

這裡就再說說我遇到的坑吧…

我的日誌格式是這樣的時間|ip|訪問路徑|訪問引數

新建模板檔案

在logstash安裝目錄中新建資料夾patterns(隨意起名),在 patterns 中新建檔案josn_pattern(隨意名),檔案裡面編寫自定義的模式json_param (.*)注意:名稱與 表示式中間有個空格

呼叫方式:

grok \|%\|%\|%"}

}}

這個容易搜到結果,關鍵點就是給file中定義乙個type屬性,其他位置對type 做判斷,我直接貼配置檔案

input 

file

file

}filter \|%\|%\|%"}}

}else

if[type]

=="execute"

\|%\|%\|%\|%"}}

}}output

}else

if[type]

=="execute"

} stdout

}

這個容易搜尋,我做個記錄

新增表字段

// access

, "ip": ,

"request": ,

"param":

}}// execute

, "method": ,

"executetime": ,

"projectname": ,

"port":

}}新增記錄--指定id

$ curl -x put 'localhost:9200/index/type/id' -d '

' 新增記錄--不指定id

$ curl -x post 'localhost:9200/index/type' -d '

'根據id查詢

向/index/type/id發出 get 請求,就可以檢視這條記錄

使用 get 方法,直接請求/index/type/_search,就會返回所有記錄。

刪除記錄

/index/type/id發出 delete 請求,就可以刪除這條記錄

更新記錄就是使用 put 請求,重新傳送一次資料。

從0到1搭建React Native開發環境

rn開發之前要配置一系列的開發環境,這裡剛配置好,這裡做乙個總結記錄,希望對大家有幫助。1.nvm是什麼呢?全稱node version manage。看到全稱應該知道了吧,其實nvm就是用來管理nodejs的乙個管理器,他可以安裝多個版本的nodejs和npm版本。nodejs是什麼?nodejs...

從0到1搭建自助分析平台

自助分析平台是構建在大資料平台之上的,依託於大資料平台的資料研發能力,通過統一的資料服務,實現對資料查詢 分析的統一管理,為企業業務分析提供高效的資料決策支援,同時也避免資料工程師陷入繁雜的提數需求中。自助分析平台是有計算機基礎的業務人員能夠快速上手的前端產品,既要有大資料的處理效能,有需要有簡單好...

UiAutomator從0到1使用過程

1 測試裝置android4.1以上版本 2 手機開發者除錯選項開啟 3 usb除錯是否開啟 4 將手機設定充電時螢幕不關閉 5 手機解鎖圖案設定為無 6 電腦安裝android sdk 7 配置環境變數 8 cmd輸入adb devices 命令檢測手機是否連線 9 cmd輸入adb shell ...