2013-05-16 140 views
2

我的簡單配置如下所示。 我在我的主目錄中創建了一個虛擬文件夾,並在其中創建了一些日誌文件。 我的配置文件看起來像這樣。logstash文件輸入配置

input{ 
    file{ 
     type => "dummylog" 
     path => [/home/rohit/dummy/*.log" ] 
    } 
} 
output{ 
    elasticsearch{ 
     embedded => true 
    } 
} 

現在運行logstash後,我無法在logstash的Web UI的任何文件看。那些文件沒有被讀入elasticsearch。我正在使用嵌入式elasticsearch,因此不需要運行單獨的進程。任何人都可以幫我解決我犯的錯誤嗎?

回答

3

也許你應該修正你的配置語法錯誤,然後看看是否有更深層的問題。

你缺少了「行:

path => [/home/rohit/dummy/*.log" ] 

如果不解決這個問題,這將是明智的,以確認在運行過程logstash用戶,已讀訪問日誌(S)後試圖讀取。

1

要非常小心的語法,你錯過了「(引號)在路徑

input{ 
    file{ 
     type => "dummylog" 
     path => ["/home/rohit/dummy/*.log"] 
    } 
} 

output{ 
    elasticsearch{ 
     embedded => true 
    } 
} 

還要注意的是這個工作,elasticsearch必須是在小號ame主機作爲logstash。

2
input { 
    file { 
    path => "/home/rohit/dummy/*.log" 
    type => "log" 
    } 
} 

filter { 
    if [type] == "log" { 
    grok { 
     pattern => "%{COMBINEDAPACHELOG}" 
    } 
    } 
} 

output { 
    elasticsearch { host => localhost } stdout { } } 
} 

來檢查模式是否正確運行

$斌/ logstash劑-f 的httpd-shipper.conf --configtest

0

除了左引號你一定已經忘了:

start_position => ...#字符串,其中之一[ 「開始」, 「結束」] (可選),默認: 「結束」

所以,它應該是:

input{ 
    file{ 
    type => "dummylog" 
    path => "/home/rohit/dummy/*.log" 
    start_position => "beginning" 
    } 
} 
    output { 
    elasticsearch{ 
     embedded => true 
    } 
}