logstash的安裝和簡單使用

1、安裝

一、下載並解壓

# 下載,不一樣的操做系統下載不一樣的包
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.12.0-darwin-x86_64.tar.gz
# 解壓
tar -zxvf logstash-7.12.0-darwin-x86_64.tar.gz
# 重命名
mv logstash-7.12.0 logstash

下載對應版本的logstash

二、logstash 一些命令行參數

一、查看幫助信息

cd logstash
bin/logstash -h

二、加載指定pipeline文件路徑

bin/logstash -f 文件路徑

注意⚠️:
-f 後面跟的文件路徑能夠是一個文件的路徑,也能夠是一個文件夾的路徑,若是是文件夾的路徑,則會加載該文件夾下的文件,組成一個大的 pipeline 文件。html

三、檢測配置文件語法是否有錯誤

bin/logstash -t

四、熱加載pipeline配置文件

bin/logstash -r

五、指定綁定的主機和啓動的端口

bin/logstash --http.host 127.0.0.1 --http.port 9210

注意⚠️:
更多配置項參考 bin/logstash -h 的輸出。node

三、修改logstash的配置文件

一、修改jvm的配置

vim config/jvm.options

修改 -Xms 和 -Xmx 等其他參數的值。

二、修改logstash.yml配置

vim config/logstash.yml
# 設置節點的名字
node.name: logstash-01
# 設置 pipeline 的id
pipeline.id: main
pipeline.ordered: auto
# 設置pipeline 的線程數(filter+output),默認是cpu的核數
# pipeline.workers: 2
# 設置main pipeline文件所在的位置
# path.config:
# 自動從新加載pipeline配置文件
config.reload.automatic: true
# 設置http api 綁定的ip和端口
http.host: 127.0.0.1
http.port: 9201
# 設置logstash隊列的類型 爲持久化,默認是 memory
queue.type: persisted

四、編寫一個pipeline文件

實現功能,接口從控制檯輸入的數據而後輸出到控制檯上。vim

文件名: pipeline.conf/demo-std.confapi

# 輸入, stdin 表示標準輸入
input {
    stdin {
        codec => plain {
            charset => "UTF-8"
        }
        # type 的值隨便給,就一個標識,後期方便查詢
        type => "console input"
        # 添加一個 tag
        tags => ["console"]
    }
}

# 數據過濾
filter {
    
}

# 輸出 stdout 表示輸出
output {
    stdout {
        codec => rubydebug {
            
        }
    }
}

五、啓動logstash

啓動的時候,直接某個pipeline文件ruby

# -f 指定 pipeline 文件的路徑
bin/logstash -f pipeline.conf/demo-std.conf

六、查看運行結果

控制檯輸出

2、pipeline的組成

pipeline的組成
由上圖可知,一個pipeline有三個元素組成inputfilteroutput。其中 inputoutput是必須的。filter是可選的。bash

input:指定了從那個地方抓取數據,好比:文件(file)、beats、tcp等等。
filter:是咱們能夠修改input的數據,好比增長字段、重命名字段、修改字段類型等等。
output:決定了咱們處理好的數據輸出到哪裏,好比:es、file、等等。jvm

3、參考連接

一、logstash下載地址
二、logstash的目錄結構
三、logstash.yml配置文件的參數
四、logstash命令行參數tcp

相關文章
相關標籤/搜索