ELK(ElasticSearch, Logstash, Kibana)搭建實時日誌分析平臺

ELK平臺介紹

日誌主要包括系統日誌、應用程序日誌和安全日誌。系統運維和開發人員能夠經過日誌瞭解服務器軟硬件信息、檢查配置過程當中的錯誤及錯誤發生的緣由。常常分析日誌能夠了解服務器的負荷,性能安全性,從而及時採起措施糾正錯誤。windows

一般,日誌被分散的儲存不一樣的設備上。若是你管理數十上百臺服務器,你還在使用依次登陸每臺機器的傳統方法查閱日誌。這樣是否是感受很繁瑣和效率低下。當務之急咱們使用集中化的日誌管理,例如:開源的syslog,將全部服務器上的日誌收集彙總。瀏覽器

集中化管理日誌後,日誌的統計和檢索又成爲一件比較麻煩的事情,通常咱們使用grep、awk和wc等Linux命令能實現檢索和統計,可是對於要求更高的查詢、排序和統計等要求和龐大的機器數量依然使用這樣的方法不免有點力不從心。安全

開源實時日誌分析ELK平臺可以完美的解決咱們上述的問題,ELK由ElasticSearch、Logstash和Kiabana三個開源工具組成。官方網站:https://www.elastic.co/productsruby

  1. Elasticsearch是個開源分佈式搜索引擎,它的特色有:分佈式,零配置,自動發現,索引自動分片,索引副本機制,restful風格接口,多數據源,自動搜索負載等。
  2. Logstash是一個徹底開源的工具,他能夠對你的日誌進行收集、過濾,並將其存儲供之後使用(如,搜索)。
  3. Kibana 也是一個開源和免費的工具,它Kibana能夠爲 Logstash 和 ElasticSearch 提供的日誌分析友好的 Web 界面,能夠幫助您彙總、分析和搜索重要數據日誌。

如圖:Logstash收集AppServer產生的Log,並存放到ElasticSearch集羣中,而Kibana則從ES集羣中查詢數據生成圖表,再返回給Browser。服務器

ELK平臺搭建

Elasticsearch 安裝

  1. 點擊下載
  2. 解壓zip或者tar包等
  3. 在bin/elasticsearch (windows版本是bin\elasticsearch.bat)
  4. 請求 http://localhost:9200/ 能看到帶版本的返回值便可

Logstash 安裝

  1. 點擊下載微信

  2. 解壓zip或者tar包等restful

  3. 在bin目錄建立一個 logstash.conf文件 內容以下運維

    input {
       tcp {
        port => 4567 //項目日誌配置文件中寫的端口
        type => "logs" 
      }
     }
    
     filter {
     }
     output {
             stdout{codec =>rubydebug}
        elasticsearch {
        hosts => ["localhost:9200"] // Elasticsearch 的ip 端口
       }
     }
  4. bin/logstash -f logstash.conf 便可elasticsearch

Kibana 安裝

  1. 點擊下載
  2. 解壓zip或者tar包等
  3. vi config/kibana.yml 文件 修改 elasticsearch.url = Elasticsearch 的ip 端口 如Elasticsearch 的ip 端口
  4. 執行bin/kibana (windows執行bin\kibana.bat)
  5. 瀏覽器打開http://localhost:5601

驗證

  1. logback.xml 配置

  1. 測試類

  1. Logstash 日誌

  1. Kibana 顯示

如感受文章對你有所幫助,能夠關注微信公衆號【五彩的顏色】鼓勵一下 tcp

相關文章
相關標籤/搜索