mirror of
https://github.com/elastic/logstash.git
synced 2025-04-24 06:37:19 -04:00
- use Util::collapse
This commit is contained in:
parent
b22506fa17
commit
445eada3e2
1 changed files with 3 additions and 20 deletions
|
@ -4,6 +4,7 @@ require 'rubygems'
|
|||
require 'erb'
|
||||
require 'json'
|
||||
require 'lib/log'
|
||||
require 'lib/util'
|
||||
|
||||
module LogStash
|
||||
class Log
|
||||
|
@ -23,7 +24,7 @@ module LogStash
|
|||
|
||||
def parse_entry(raw_entry)
|
||||
# need to add @LINE
|
||||
res = collapse(JSON.parse(raw_entry))
|
||||
res = LogStash::Util::collapse(JSON.parse(raw_entry))
|
||||
res["@LINE"] = template(@line_format, res)
|
||||
fix_date(res)
|
||||
|
||||
|
@ -34,25 +35,7 @@ module LogStash
|
|||
def template(fmt, entry)
|
||||
erb = ERB.new(fmt)
|
||||
return erb.result(binding)
|
||||
end
|
||||
|
||||
private
|
||||
def collapse(hash)
|
||||
hash.each do |k, v|
|
||||
if v.is_a?(Hash)
|
||||
hash.delete(k)
|
||||
collapse(v).each do |k2, v2|
|
||||
hash["#{k}/#{k2}"] = v2
|
||||
end
|
||||
elsif v.is_a?(Array)
|
||||
hash[k] = v.inspect
|
||||
elsif not v.is_a?(String)
|
||||
hash[k] = v.to_s
|
||||
end
|
||||
end
|
||||
|
||||
return hash
|
||||
end
|
||||
end # def template
|
||||
end # class JsonLog
|
||||
end
|
||||
end # module LogStash::Log
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue