[transforms.field1] type = "remap" inputs = [] source = '.field1 = "value1"' [transforms.field2] type = "remap" inputs = [] source = '.field2 = "value2"' [transforms.field3] type = "remap" inputs = [] source = '.field3 = "value3"' # Task transform [transforms.multi_input_dedupe] type = "dedupe" inputs = ["field1", "field2"] [transforms.multi_input_dedupe.fields] match = ["id"] # Task transform [transforms.multi_input_reduce] type = "reduce" inputs = ["field3", "multi_input_dedupe"] [[tests]] name = "reduce_with_multiple_inputs" [[tests.inputs]] insert_at = "field3" type = "log" [tests.inputs.log_fields] message = "some message" a_field = "value1" [[tests.inputs]] insert_at = "multi_input_dedupe" type = "log" [tests.inputs.log_fields] message = "some message" another_field = 1234 [[tests.outputs]] extract_from = "multi_input_reduce" [[tests.outputs.conditions]] type = "vrl" source = """ assert_eq!(.message, "some message", "incorrect message") assert_eq!(.a_field, "value1", "incorrect field") assert_eq!(.another_field, 1234, "incorrect field") """ [[tests]] name = "dedupe_into_reduce_with_multiple_inputs" [[tests.inputs]] insert_at = "field1" type = "log" [tests.inputs.log_fields] message = "some message" counter = 1 id = 1 [[tests.inputs]] insert_at = "field2" type = "log" [tests.inputs.log_fields] message = "some message" counter = 1 id = 1 [[tests.inputs]] insert_at = "field3" type = "log" [tests.inputs.log_fields] message = "some message" counter = 1 [[tests.outputs]] extract_from = "multi_input_reduce" [[tests.outputs.conditions]] type = "vrl" source = """ assert_eq!(.message, "some message", "incorrect message") assert_eq!(.field3, "value3", "incorrect field") assert_eq!(.counter, 2, "incorrect counter") """