大資料入門第二十五天 logstash入門

2022-02-12 00:09:25 字數 3295 閱讀 9167

1.logstash是什麼

根據官網介紹:

logstash 是開源的伺服器端資料處理管道,能夠同時 從多個**採集資料、轉換資料,然後將資料傳送到您最喜歡的 「儲存庫」 中。(我們的儲存庫當然是 elasticsearch。)

//屬於elasticsearch旗下產品(jruby開發,開發者曾說如果他知道有scala,就不會用jruby了。。)

也就是說,它是flume的「後浪」,它解決了「前浪」flume的資料丟失等問題!

2.基礎結構

過濾:實時解析轉換資料

輸出:選擇儲存庫匯出資料

補充:logstash 每讀取一次資料的行為叫做事件

更多詳細介紹,包括具體支援的輸入輸出等,參考

用法博文推薦:

logstash5.x 6.x需要jdk1.8+,如未安裝,請先安裝jdk1.8+

2.解壓

1.helloworld示例

執行啟動命令,並直接給出配置

bin/logstash -e '

input } output }

'

常用的啟動引數如下:

執行結果如下:輸入helloworld,給出message訊息:

[hadoop@mini1 logstash-5.6.9]$ bin/logstash -e '

input } output }

'sending logstash

'[2018-04-18t16:38:18,309][info ][logstash.modules.scaffold] initializing module

[2018-04-18t16:38:18,323][info ][logstash.modules.scaffold] initializing module

[2018-04-18t16:38:18,325][info ][logstash.setting.writabledirectory] creating directory

[2018-04-18t16:38:18,373][info ][logstash.setting.writabledirectory] creating directory

[2018-04-18t16:38:18,401][info ][logstash.agent ] no persistent uuid file found. generating new uuid

[2018-04-18t16:38:18,757][info ][logstash.pipeline ] starting pipeline

[2018-04-18t16:38:18,847

][info ][logstash.pipeline ] pipeline main started

the stdin plugin is now waiting

forinput:

[2018-04-18t16:38:18,929][info ][logstash.agent ] successfully started logstash api endpoint

helloworld

2.使用配置檔案實際中的 -e 後的配置一般相對更複雜,所以一般會通過-f使用配置檔案來啟動

bin/logstash -f logstash.conf
配置檔案大概長這樣:

# 輸入

input

# 過濾器

filter

# 輸出

output

編寫乙個示例的配置檔案:logstash.conf:

input }#

filter

output

}

輸出結果如下:

[hadoop@mini1 logstash-5.6.9]$ bin/logstash -f logstash.conf

sending logstash

'[2018-04-18t16:49:28,522][info ][logstash.modules.scaffold] initializing module

[2018-04-18t16:49:28,525][info ][logstash.modules.scaffold] initializing module

[2018-04-18t16:49:28,988][info ][logstash.pipeline ] starting pipeline

[2018-04-18t16:49:29,371

][info ][logstash.pipeline ] pipeline main started

logstash主要有3個主外掛程式:輸入input,輸出output,過濾filter,其他還包括編碼解碼外掛程式等

1.輸入外掛程式input

定義的資料來源,支援從檔案、stdin、kafka、twitter等**,甚至可以自己寫乙個input plugin。

輸入的file path等是支援通配的,例如:

path => "

/data/web/logstash/logfile/*/*.log

"

常用輸入外掛程式1.filefile外掛程式的必選引數只有path一項:部分選項如下:

配置示例:

input

file

}

2.過濾外掛程式、輸出外掛程式同輸入外掛程式類似,可以參考官網詳細配置與參考博文

第二十五天

程序 資源分配的最小單元 程序的組成 程式 資料和程序控制塊 pcb 所有的排程都是提前準備的 程序的經典三態 執行 就緒 等待 父程序的id ppid 啟動程序的使用者id uid 排程演算法 1.先來先服務 2.短程序優先 3.高優先順序優先 4.時間片輪轉法 一般都是用這個 先來先服務演算法的...

第二十五天

學會了final的相關使用方法 明天學習abstract關鍵字 一 final關鍵字 final關鍵字是最終的意思,使用final修飾類,代表該類不能被繼承。final修飾方法表示該方法不能被重寫。final修飾變數,代表該變數是常量 1 final方法 使用final修飾方法時,該方法不能被重寫,...

第二十五天 ListView

在value下定義顏色 red ff0000 紅色 ff0000 white ffffff 白色 ffffff getview方法中,convertview 效能優化 減少記憶體,提高速度 水果的例子 fruit類 public class fruit public intgetimg public...