This Worked great using rex field=@mt max_match=0 "{(?<replacement_fields>[^}]+)" | eval message='@mt' | foreach * [ | eval message=coalesce(replace(message, "{".mvindex(replacement_fields, mvfind(replacement_fields, "<<FIELD>>"))."}", '<<FIELD>>'), message) ] (?<!\{){(?!\{)(?<replacement_fields>[^}]+) this regex managed the escaped brackets now i'll try to somehow make this part of the sourcetype, more likely i'll make a macro. the lookup table solution is not desireable, with the template in the log it gives the developers complete control to change the message to meet their needs without having to have a process for adding or appending templates
... View more