搭建日誌分析系統ELK
阿新 • • 發佈:2018-12-26
日誌分析元件3件套:
- E:
Elasticsearch
是一個搜尋引擎,基於Lucene
,天然分散式,很容易水平擴充套件,遮蔽了複雜的分散式概念,對外提供RESTful
API。 - L:
Logstash
用於收集日誌,寫入Elasticsearch
。 - K:
Kibana
是一個展示層,基於NodeJS,可以圖示形式展示資料,介面簡潔。
這3大元件,都可以在 這裡 直接下載。
搭建安裝步驟:
下載elasticsearch,解壓後,執行
bin/elasticsearch -d
,以守護程序形式啟動,開啟localhost:9200會返回json資訊如下,說明啟動成功。
下載Logstash,解壓,在/bin/config下建立一個配置檔案
vi logstash.conf
input {
tcp {
host => "192.168.1.91" # 要監聽的日誌來源地址
port => 4567
mode => "server"
}
}
output {
stdout{ codec => rubydebug }
elasticsearch {
hosts => ["192.168.1.91:9200"] # elasticsearch中配置的host地址
}
}
- 指定配置檔案並後臺啟動:
bin/logstash -f logstash.conf &
。 - 在你的應用程式中配置日誌輸出到
Logstash
Logback.xml
- 引入logstash-logback-encoder:
compile group: 'net.logstash.logback', name: 'logstash-logback-encoder', version: '4.11'
- 配置logback.xml
- 引入logstash-logback-encoder:
<appender name="stash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>192.168.1.91:4567</destination >
<!-- encoder is required -->
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
</appender>
<root level="DEBUG">
<appender-ref ref="stdout"/>
<appender-ref ref="fileout"/>
<appender-ref ref="stash"/>
</root>
- 下載Kibana,解壓後啟動:
bin/kibana &
,開啟localhost:5601
即可。
注意事項
- 在安裝Elasticsearch的時候,配置檔案中我們把network.host改為0.0.0.0允許遠端訪問後,啟動會報錯,請按照 如下操作,放開linux的系統限制。