2015-08-14 1247 views
0

全部。我试图用logstash来读取数据。配置是:logstash无法读取文件,无sincedb_path设置,根据文件路径生成一个

input { 
    file { 
    path =>[ "/usr/share/logstash-1.5.3/test.txt"] 
    start_position => beginning 
    } 
} 


output{ 
    stdout { codec => rubydebug } 
} 

但调试后没有工作

,这表明这样的:

config LogStash::Outputs::Stdout/@workers = 1 {:level=>:debug, :file=>"logstash/config/mixin.rb", :line=>"112", :method=>"config_init"} 
Registering file input {:path=>["/usr/share/logstash-1.5.3/test.txt"], :level=>:info, :file=>"logstash/inputs/file.rb", :line=>"76", :method=>"register"} 
No sincedb_path set, generating one based on the file path {:sincedb_path=>"/root/.sincedb_8b88439fb77c177f2cae65e1f928b133", :path=>["/usr/share/logstash-1.5.3/test.txt"], :level=>:info, :file=>"logstash/inputs/file.rb", :line=>"119", :method=>"register"} 
Pipeline started {:level=>:info, :file=>"logstash/pipeline.rb", :line=>"87", :method=>"run"} 
Logstash startup completed 
_sincedb_open: /root/.sincedb_8b88439fb77c177f2cae65e1f928b133: No such file or directory - /root/.sincedb_8b88439fb77c177f2cae65e1f928b133 {:level=>:debug, :file=>"filewatch/tail.rb", :line=>"216", :method=>"_sincedb_open"} 
_discover_file_glob: /usr/share/logstash-1.5.3/test.txt: glob is: ["/usr/share/logstash-1.5.3/test.txt"] {:level=>:debug, :file=>"filewatch/watch.rb", :line=>"132", :method=>"_discover_file"} 
_discover_file: /usr/share/logstash-1.5.3/test.txt: new: /usr/share/logstash-1.5.3/test.txt (exclude is []) {:level=>:debug, :file=>"filewatch/watch.rb", :line=>"141", :method=>"_discover_file"} 
caller requested sincedb write() {:level=>:debug, :file=>"filewatch/tail.rb", :line=>"205", :method=>"sincedb_write"} 
Plugin is finished {:plugin=><LogStash::Outputs::Stdout codec=><LogStash::Codecs::RubyDebug metadata=>false>, workers=>1>, :level=>:info, :file=>"logstash/plugin.rb", :line=>"61", :method=>"finished"} 
Pipeline shutdown complete. {:level=>:info, :file=>"logstash/pipeline.rb", :line=>"101", :method=>"run"} 
Logstash shutdown completed 

我删除了所有sincede在/根,仍不能正常工作

回答

0

也许你可以做如下:

改变你的输入配置像这样:

input { 
    file { 
    path =>[ "/usr/share/logstash-1.5.3/test.txt"] 
    start_position => beginning 
    sincedb_path => "/opt/logstash/sincedb-access" 
    } 
} 

然后点击一个文件sincedb_path:

touch /opt/logstash/sincedb-access 
chown logstash:logstash /opt/logstash/sincedb-access 

最重要的事情是:

ln -s /lib/x86_64-linux-gnu/libcrypt.so.1 /usr/lib/x86_64-linux-gnu/libcrypt.so 

你可能失去了libcrypt.so文件。