一揖庄、安裝logstash
下載官方軟件包的方式有以下幾種:
壓縮包方式
wget https://download.elastic.co/logstash/logstash/logstash-1.5.1.tar.gz
Debian 平臺
wget https://download.elastic.co/logstash/logstash/packages/debian/logstash_1.5.1-1_all.deb
Redhat 平臺
wget https://download.elastic.co/logstash/logstash/packages/centos/logstash-1.5.1-1.noarch.rpm
二、依賴
java ? openssl
三欠雌、測試
# 安裝位置/bin/logstash -e 'input{stdin{}}output{stdout{codec=>rubydebug}}'
然后終端輸入蹄梢。看打印結果:
{
"message"=>"Hello World",
"@version"=>"1",
"@timestamp"=>"2014-08-07T10:30:59.937Z",
"host"=>"raochenlindeMacBook-Air.local",
}
類似這種就OK。
四禁炒、client而咆、server 端:
client 日志生產服務器client.conf
input {
? ? file {
? ? ? ? ? type => "test"
? ? ? ? ? path => "/home/Desktop/logs/test.log"
? ? ? ? ? codec => "json"
? ? }
}
output { # 輸出日志
? ? ?tcp { # 推送日志到收集服務器
? ? ? ? ? ?codec => json_lines
? ? ? ? ? ?mode => "client"
? ? ? ? ? ?host => "localhost" # 目標服務器
? ? ? ? ? ?port => "9022" # 目標服務器logstash server的 port
? ? ?}
}
server 日志收集服務器 server.conf
input { # 收集日志
? ? ? ? tcp { # 從tcp獲取
? ? ? ? ? ? ? ? codec => json_lines
? ? ? ? ? ? ? ? host => "0.0.0.0"
? ? ? ? ? ? ? ? mode => "server"
? ? ? ? ? ? ? ? port => "9022" # 使用port運行server
? ? ? ?}
}
output {
? ? ?stdout {
? ? ? ? ? ? ? ? codec=>rubydebug #直接打印
? ? ? }
}
9022為未使用的端口,
分別運行:
# bin/logstash -f client.conf
# bin/logstash -f server.conf
往測試test.log寫入內容幕袱,看server端的內容輸出:
{
"message" => "2016-06-13 09:33:01\\r",
"tags" => "_jsonparsefailure",
"@version" => "1",
"@timestamp" => "2016-06-13T09:33:01.890Z",
"type" => "test",
"host" => "0.0.0.0",
"path" => "/home/Desktop/logs/test.log"
}
OK暴备。。们豌。