Logstash學習系列之基礎介紹

Logstash功能特性

  • 能集中處理各類類型的數據
  • 能標準化不一樣模式和格式的數據
  • 能快速的擴展自定義日誌的格式
  • 它具備收集,分析和轉發數據流的功能

Logstash運行參數

-f                     指定配置文件
-e                     用於指定字符串輸入
-w                     指定filterworkers的數量,默認爲1,指定logstash的工做線程數
-l                     指定logstash的默認日誌寫入到一個文件中,默認爲控制檯輸出
-v                     設置同時輸出info和debug級別的日誌,已經棄用
--quiet                靜默模式,僅僅只有error級別信息的輸出
--verbose              info級別的log輸出
--debug                debug級別的日誌輸出
--v                    查看logstash版本
-p                     能夠寫本身的插件,而後指定路徑使用它們
-t                     用來測試logstash讀取到的配置文件語法是否能正常解析

Logstash配置語法

logstash處理流程apache

input-->decode-->filter-->encode-->outputjson

logstash語法格式數組

區域測試

logstash中,使用{}來定義區域的
區域內,咱們能夠定義插件
一個區域內是能夠定義多個插件

數據類型ui

布爾boolean:        ssl_enable=>true
字節Bytes:        my_bytes=>"10Mib"
字符串String:     name=>"zhang san"
Number:         port=>514
數組Array:         match=>["datetime","UNIX","ISO8601"]
哈希Hash:
    options=>{
        key1=>"value1"
        key2=>"value2"
    }    
編碼解碼:            codec: codec=>"json"
密碼型:            my_password=>"passowrd"
路徑:            my_path=>"/tmp/logstash"
註釋:            #

條件判斷編碼

==(等於),!=(不等於),<(小於),>(大於),<=(小於等於),>=(大於等於)
=~(匹配正則),!~(不匹配正則)
in(包含),not in(不包容)
and(與),or(或),nand(非與),xor(非與)
():複合表達式,!():對複合表達式取反
判斷
if EXPRESSION {
    ...
} else if EXPRESSION {
    ...
} else {
    ...
}

字段引用spa

logstash還支持引用其餘地方的值
output {
    statsd {
        increment => "apache%{[response][status]}"
    }
}
相關文章
相關標籤/搜索