Logstash 提供了一個 shell 腳本叫 logstash 方便快速運行。它支持以下參數:
-e
意即執行。我們在 “Hello World” 的時候已經用過這個參數了。事實上你可以不寫任何具體配置,直接運行 bin/logstash -e ” 達到相同效果。這個參數的默認值是下面這樣:
input {
stdin { }
}
output {
stdout { }
}
–config 或 -f
意即文件。真實運用中,我們會寫很長的配置,甚至可能超過 shell 所能支持的 1024 個字符長度。所以我們必把配置固化到文件里,然后通過 bin/logstash -f agent.conf 這樣的形式來運行。
此外,logstash 還提供一個方便我們規劃和書寫配置的小功能。你可以直接用logstash -f /etc/logstash.d/
來運行。logstash 會自動讀取/etc/logstash.d/ 目錄下所有 *.conf 的文本文件,然后在自己內存里拼接成一個完整的大配置文件,再去執行。
注意:
logstash 列出目錄下所有文件時,是字母排序的。而 logstash 配置段的 filter 和output 都是順序執行,所以順序非常重要。采用多文件管理的用戶,推薦采用數字編號方式命名配置文件,同時在配置中,嚴謹采用 if 判斷限定不同日志的動作。
–configtest 或 -t
意即測試。用來測試 Logstash 讀取到的配置文件語法是否能正常解析。Logstash配置語法是用 grammar.treetop 定義的。尤其是使用了上一條提到的讀取目錄方式的讀者,尤其要提前測試。
–log 或 -l
意即日志。Logstash 默認輸出日志到標準錯誤。生產環境下你可以通過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
可以寫自己的插件,然后用logstash --pluginpath /path/to/own/plugins
加載它們。
–verbose
輸出一定的調試日志。
小貼士:如果你使用的 Logstash 版本低于 1.3.0,你只能用 bin/logstash -v 來代替。
–debug
輸出更多的調試日志。
出處:https://doc.yonyoucloud.com/doc/logstash-best-practice-cn/get_start/full_config.html
轉載于:https://blog.51cto.com/qiangsh/2153302