@@ -35,7 +35,7 @@ class ConcatFilter < Filter
3535 desc "Use partial metadata to concatenate multiple records"
3636 config_param :use_partial_metadata , :bool , default : false
3737 desc "Input format of the partial metadata (fluentd or journald docker log driver)"
38- config_param :partial_metadata_format , :string , default : "docker-fluentd"
38+ config_param :partial_metadata_format , :enum , list : [ :"docker-fluentd" , :"docker-journald" , :"docker-journald-lowercase" ] , default : : "docker-fluentd"
3939 desc "If true, keep partial metadata"
4040 config_param :keep_partial_metadata , :bool , default : false
4141
@@ -79,9 +79,6 @@ def configure(conf)
7979 if @use_partial_metadata && @partial_key
8080 raise Fluent ::ConfigError , "use_partial_metadata and partial_key are exclusive"
8181 end
82- unless [ "docker-fluentd" , "docker-journald" , "docker-journald-lowercase" ] . include? ( @partial_metadata_format )
83- raise Fluent ::ConfigError , "partial_metadata_format only supports docker-fluentd, docker-journald or docker-journald-lowercase"
84- end
8582
8683 @mode = nil
8784 case
@@ -92,21 +89,21 @@ def configure(conf)
9289 when @use_partial_metadata
9390 @mode = :partial_metadata
9491 case @partial_metadata_format
95- when "docker-fluentd"
92+ when : "docker-fluentd"
9693 @partial_message_field = "partial_message" . freeze
9794 @partial_id_field = "partial_id" . freeze
9895 @partial_ordinal_field = "partial_ordinal" . freeze
9996 @partial_last_field = "partial_last" . freeze
10097 @partial_message_indicator = @partial_message_field
101- when "docker-journald"
98+ when : "docker-journald"
10299 @partial_message_field = "CONTAINER_PARTIAL_MESSAGE" . freeze
103100 @partial_id_field = "CONTAINER_PARTIAL_ID" . freeze
104101 @partial_ordinal_field = "CONTAINER_PARTIAL_ORDINAL" . freeze
105102 @partial_last_field = "CONTAINER_PARTIAL_LAST" . freeze
106103 # the journald log driver does not add CONTAINER_PARTIAL_MESSAGE to the last message
107104 # so we help ourself by using another indicator
108105 @partial_message_indicator = @partial_id_field
109- when "docker-journald-lowercase"
106+ when : "docker-journald-lowercase"
110107 @partial_message_field = "container_partial_message" . freeze
111108 @partial_id_field = "container_partial_id" . freeze
112109 @partial_ordinal_field = "container_partial_ordinal" . freeze
0 commit comments