@@ -40,6 +40,9 @@ class ReconnectError < Fluent::UnrecoverableError; end
4040 config_param :read_from_head , :bool , default : false , deprecated : "Use `read_existing_events' instead."
4141 config_param :read_existing_events , :bool , default : false
4242 config_param :parse_description , :bool , default : false
43+ config_param :description_prefix_word_delimiter , :string , default : "."
44+ config_param :description_word_delimiter , :string , default : "_"
45+ config_param :downcase_description_keys , :bool , default : true
4346 config_param :render_as_xml , :bool , default : false
4447 config_param :rate_limit , :integer , default : Winevt ::EventLog ::Subscribe ::RATE_INFINITE
4548 config_param :preserve_qualifiers_on_hash , :bool , default : false
@@ -389,7 +392,7 @@ def parse_desc(record)
389392 elsif parent_key . nil?
390393 record [ to_key ( key ) ] = value
391394 else
392- k = "#{ parent_key } . #{ to_key ( key ) } "
395+ k = "#{ parent_key } #{ @description_prefix_word_delimiter } #{ to_key ( key ) } "
393396 record [ k ] = value
394397 end
395398 end
@@ -401,8 +404,8 @@ def parse_desc(record)
401404 end
402405
403406 def to_key ( key )
404- key . downcase!
405- key . gsub! ( ' ' . freeze , '_' . freeze )
407+ key = key . downcase! if @downcase_description_keys
408+ key . gsub! ( ' ' . freeze , @description_word_delimiter )
406409 key
407410 end
408411 ####
0 commit comments