From 344e1a4aef59916035516e170e74e819bc362a97 Mon Sep 17 00:00:00 2001 From: Pete Fritchman Date: Mon, 19 Oct 2009 06:27:31 +0000 Subject: [PATCH] - send back [@DATE, @LINE] in search results so we can collate results from multiple indexers --- bin/search.rb | 2 +- lib/net/servers/indexer.rb | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/bin/search.rb b/bin/search.rb index a5b4f1df5..55f0632ba 100755 --- a/bin/search.rb +++ b/bin/search.rb @@ -85,7 +85,7 @@ def main(args) # Collate & print results. puts "Hits: #{client.hits}" puts "" - puts client.results.join("\n") + puts client.results.sort_by { |r| r[0] }.collect { |r| r[1] }.join("\n") return 0 end diff --git a/lib/net/servers/indexer.rb b/lib/net/servers/indexer.rb index f6e6f1764..ef86a6e82 100644 --- a/lib/net/servers/indexer.rb +++ b/lib/net/servers/indexer.rb @@ -70,7 +70,7 @@ module LogStash; module Net; module Servers response.indexer_id = @id if @config.logs[request.log_type].nil? - puts "invalid log type: #{request.log_type}" + $stderr.puts "invalid log type: #{request.log_type}" response.results = [] response.finished = true yield response @@ -79,7 +79,6 @@ module LogStash; module Net; module Servers reader = Ferret::Index::IndexReader.new(@config.logs[request.log_type].index_dir) search = Ferret::Search::Searcher.new(reader) - #puts reader.fields.join(", ") qp = Ferret::QueryParser.new(:fields => reader.fields, :tokenized_fields => reader.tokenized_fields, :or_default => false) @@ -109,7 +108,7 @@ module LogStash; module Net; module Servers done = false result = reader[docid][:@LINE] count += 1 - results << result + results << [reader[docid][:@DATE], result] end if (total and count < limit)