接下來兩天,我們將從實作中更深入了解日誌(Log),學到透過 Filebeat 傳送 Log 的資料到 Elastic cloud,接著使用 Kibana 分析並視覺化日誌資料。
本篇的主題包含有:
那我們就開始吧!
Observability 基礎的官方教學資源可以參考這邊:https://www.elastic.co/training/introduction-to-observability---logging
Start Course,稍等一下後就會出現練習用的 VM 視窗在新的瀏覽器分頁。這一部分的實作,我們將可以學到:

Elasticsearch 後,點選 Enable 來啟用監控。
Save,這樣就啟用監控了。在正式營運時,一般會建議監控的 Elasticsearch 群集和主要營運的群集分開(避免服務掛掉的時候,負責監控的一起掰掰,無法正確紀錄錯誤並且警示)。
如果想要開啟 Kibana,只要點選左邊面板後,選擇 Kibana,並按下 Launch 就會開啟(以前好像需要再填入帳號密碼,但是現在 Kibana 的服務就會自動連動登入了)。
再來回到 VM terminal 的介面,先用下面指令來安裝 Filebeat。
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.6.2-linux-x86_64.tar.gz
tar -xzf filebeat-7.6.2-linux-x86_64.tar.gz
cd filebeat-7.6.2-linux-x86_64

cloud.id 的資訊可以從 Elastic cloud 剛才建立的設置頁面找到,而 cloud.auth 就是下載下來的帳號密碼:cloud.id:
cloud.auth:


./filebeat modules enable nginx
./filebeat setup
./filebeat -e

Dashboard,查詢 nginx,點開先建立好的視覺化面板。


Management 下 Dev Tools,先來做個查找目前的文件。

PUT _ingest/pipeline/setter
{
"description": "sets an object",
"processors": [
{
"set": {
"field": "attrs.env",
"value": "dev"
}
},
{
"set": {
"field": "attrs.zone",
"value": "us-west"
}
}
]
}

PUT _ingest/pipeline/add_geoip
{
"description" : "Add geoip info",
"processors" : [
{
"geoip": {
"field": "clientip"
}
}
]
}

PUT my_index/_doc/my_id?pipeline=add_geoip
{
"clientip": "8.8.8.8"
}

GET my_index/_doc/my_id

挖~真的越來越深入了,也藉由這麼多次反覆的練習,越來越了解各個步驟是怎麼一回事啦!
今天我們再次操作了 Filebeat 和 Log,更進一步延伸使用了 pipeline 了!明天我們再接下去更深入的實作吧!