Logstash 命令列引數

衣舞晨風發表於2017-03-28

Logstash 提供了一個 shell 指令碼叫 logstash 方便快速執行。它支援以下引數:

-e

意即執行。我們在 “Hello World” 的時候已經用過這個引數了。事實上你可以不寫任何具體配置,直接執行 bin/logstash -e ” 達到相同效果。這個引數的預設值是下面這樣:

input {
stdin { }
}
output {
stdout { }
}

–config 或 -f

意即檔案。真實運用中,我們會寫很長的配置,甚至可能超過 shell 所能支援的
1024 個字元長度。所以我們必把配置固化到檔案裡,然後通過 bin/logstash -f agent.conf 這樣的形式來執行。
此外,logstash 還提供一個方便我們規劃和書寫配置的小功能。你可以直接用

bin/logstash -f /etc/logstash.d/

來執行。logstash 會自動讀取
/etc/logstash.d/ 目錄下所有 *.conf 的文字檔案,然後在自己記憶體裡拼接成一個完整的大配置檔案,再去執行。
注意:
logstash 列出目錄下所有檔案時,是字母排序的。而 logstash 配置段的 filter 和output 都是順序執行,所以順序非常重要。採用多檔案管理的使用者,推薦採用數字編號方式命名配置檔案,同時在配置中,嚴謹採用 if 判斷限定不同日誌的動作。

–configtest 或 -t

意即測試。用來測試 Logstash 讀取到的配置檔案語法是否能正常解析。Logstash配置語法是用 grammar.treetop 定義的。尤其是使用了上一條提到的讀取目錄方式的讀者,尤其要提前測試。

–log 或 -l

意即日誌。Logstash 預設輸出日誌到標準錯誤。生產環境下你可以通過

bin/logstash -l logs/logstash.log 

命令來統一儲存日誌。

–pipeline-workers 或 -w

執行 filter 和 output 的 pipeline 執行緒數量。預設是 CPU 核數。

–pipeline-batch-size 或 -b

每個 Logstash pipeline 執行緒,在執行具體的 filter 和 output 函式之前,最多能累積的日誌條數。預設是 125 條。越大效能越好,同樣也會消耗越多的 JVM 記憶體。

–pipeline-batch-delay 或 -u

每個 Logstash pipeline 執行緒,在打包批量日誌的時候,最多等待幾毫秒。預設是 5ms。

–pluginpath 或 -P

可以寫自己的外掛,然後用

bin/logstash --pluginpath /path/to/own/plugins 

載入它們。

–verbose

輸出一定的除錯日誌。

–debug

輸出更多的除錯日誌。

作者:jiankunking 出處:http://blog.csdn.net/jiankunking

相關文章