iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 18
0
Elastic Stack on Cloud

Elastic 30天自我修行系列 第 18

透過 Data Visualizer 上傳Log檔(semi-structured text)

昨天學習了 grok 的語法,成功解析了 log File。
現在有個問題出現了,因為我的需求是將自己程式開發中的狀況進行 Logging;
而且我的本機也沒有架設 Logstash,那我要怎麼把我的檔案上傳到雲端啊?
Lostash Pipelines 研究個半天,還是想不出有什麼招式可以把本機的檔案上傳

想來想去,還是試著透過 Elastic cloud 的介面。上次有提到透過Elastic cloud 的 Data Visualizer,無法成功解析 Log file;但今天讀到Elastic co Blog官網的文章ttps://www.elastic.co/blog/importing-csv-and-log-data-into-elasticsearch-with-file-data-visualizer

文章中的 log :

<190>38377: GOW45-AR002: Apr 18 08:44:02.434 GMT: %JHG_MS-6-ROUTE_EVENT_INFO: Route changed Prefix 10.156.26.0/23, BR 10.123.11.255, i/f Ki0/0/0.849, Reason None, OOP Reason Timer Expired

怪了,格式這麼亂,還是可以被 Data Visualizer 給解析成功。

好吧,可能是我之前的 Log File 的樣子實在太冷門了,那我從善如流進行調整。

調整前的格式:

INFO [2020-18-09 21:58:35] New_Start-------------
WARN [2020-18-09 21:58:35] Now_Loaging99%

R 程式碼,在指定格式時調整如下:

logger <- layout_glue_generator(format = "{time} {level} {msg}")
log_layout(logger)

調整後的資料格式,把日期時間往最前面的位置放:

2020-09-18 22:19:51 INFO New_Start
2020-09-18 22:19:51 WARN Now_Loaging83%

果然被正確的識別出來

https://ithelp.ithome.com.tw/upload/images/20200918/2013003381x83uDbRj.png

再點按一下 Override settings ;可以發現我們這幾天在研究的好朋友 "Grok pattern"。
如果有必要的話,也可以自己手動調整編修 Grok pattern

https://ithelp.ithome.com.tw/upload/images/20200918/20130033szfQxbm8i8.png

所以,如果你和我一樣有打算將自己平常進行程式寫作的 log file 上傳到雲端進行分析。切記要先拿幾筆樣本進行測試,如果 Data Visualizer 無法正確識別的話,趁早改變一下資料格式吧。


上一篇
解析三欄位的 Log File ( Logstash : grok )
下一篇
上傳三國演義第一回囉
系列文
Elastic 30天自我修行31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言