logstash部署及基本語法(二)
一、logstash介紹
Logstash是一個開源的數據收集引擎,可以水平伸縮,而且logstash是整個ELK當中擁有最多插件的一個組件,其可以接收來自不同源的數據並統一輸入到指定的且可以是不同目的地。
logstash收集日誌基本流程: input-->codec-->filter-->codec-->output
1.input:從哪裏收集日誌。
2.filter:發出去前進行過濾
3.output:輸出至Elasticsearch或Redis消息隊列
4.codec:輸出至前臺,方便邊實踐邊測試
5.數據量不大日誌按照月來進行收集
官方文檔:https://www.elastic.co/guide/en/logstash/current/index.html
二、logstash的安裝
2.1、安裝logstash
root@linux-node1 ~]# wget https://artifacts.elastic.co/downloads/logstash/logstash-6.0.0.rpm [root@linux-node1 ~]# yum install -y logstash-6.0.0.rpm #依賴java安裝 [root@linux-node1 ~]# rpm -ql logstash #查看yum安裝路徑 #node2節點安裝logstash [root@linux-node2 ~]# yum install -y logstash-6.0.0.rpm [root@linux-node1 ~]# ll /etc/logstash/conf.d/ #logstash的主配置目錄 總用量 0
三.LogStash使用
3.1 標準輸入、標準輸出插件
[root@saltstack02 ~]# /usr/share/logstash/bin/logstash -e ‘input { stdin {} } output { stdout{} }‘
3.2 標準輸入、標準輸出插件,輸出顯示json格式
[root@saltstack02 ~]# /usr/share/logstash/bin/logstash -e ‘input { stdin{} } output { stdout{ codec =rubydebug } }‘
3.3 標準輸入、輸出測試輸出到文件
[root@saltstack02 ~]# /usr/share/logstash/bin/logstash -e ‘input { stdin {} } output { file { path => "/tmp/test-%{YYY.MM.dd}.log"} }‘
3.4 測試輸出到elasticsearch
[root@saltstack02 ~]# /usr/share/logstash/bin/logstash -e ‘input { stdin {} } output { elasticsearch { hosts => ["10.0.0.22:9200"] index => "logstash-test-%{+YYYY.MM.dd}" } }‘
[root@saltstack02 ~]# ll /data/elkdata/nodes/0/indices/ total 0 drwxr-xr-x 8 elasticsearch elasticsearch 65 Jun 20 17:30 qdsZPfY9R5ay9BImUDeRvw
logstash部署及基本語法(二)