iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 3
0
自我挑戰組

30天 Docker E.L.K stack 系列 第 3

Day3 - logstash 輸入配置

首先 logstash 是 E.L.K 最先觸碰到你想要管理 log 部分,你可以把他想成一個介接層也是首次接觸到 log 或資料的地方,在這裡你可以選擇你的輸入來源像是直接讀 log 檔,抑或是當你想直接接受多台機器的 log 時你可以使用 tcp 作為接口。其次當多個來源的資料想分別處理成不同資訊時,在 logstash 提供的 input 可以協助我們預先做出簡單的類別判斷,以利後續 filter 分別使用不同的規則進行切割,最後於 output 選擇要輸出的方式與位置。

logstash 的配置非常的簡潔明瞭,主要可分成三個部分 : input, filter, output
你可以看到預設的 docker-elk/logstash/config/logstash.conf 長得像

input {
    tcp {
        port => 5000
    }
}

## Add your filters / logstash plugins configuration here

output {
    elasticsearch {
        hosts => "elasticsearch:9200"
    }

在這份 logstash 預設的設定檔中並沒有 filter 的部分,因此我們送到 port 5000 的內容會直接地被送至 elasticsearch 被儲存。我們可以簡單編輯一個 test.txt 裡面有著內容 "hello world" 來測試結果。

hello world

$ nc 127.0.0.1 5000 < test.txt

你可以直接到 http://127.0.0.1:5601/ 觀察結果
http://ithelp.ithome.com.tw/upload/images/20161218/20103420ICNXhj3C2T.png

沒錯你剛剛已經完成了把想要的純文字檔案透過 logstash 儲存至 elasticsearch 並且以 kibana 呈現的流程,是不是非常的容易呢,基本上至此我們只需要持續調整 logstash 的設定檔便可以完成許多想要關注的事情囉。


上一篇
Day2 - 來個快速安裝吧
下一篇
Day4 - 便利的 logstash plugin (input)
系列文
30天 Docker E.L.K stack 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言