Eu não sou um especialista, mas você pode começar com isso: você precisará repetir seu regexp (não sei como você pode avaliar um modelo para obter a string **NO MATCH**
). Por exemplo, digamos que sua parte "appname" é correspondida pelo regexp [a-z]+:
, então você pode escrever
$template nomatch,"/var/log/docker/nomatch/%hostname%.log"
if (not re_match($msg, "[a-z]+:")) then {
action(type="omfile" dynaFile="nomatch")
stop
}
O $template
descreve seu nome de arquivo desejado, o if
tenta encontrar a correspondência e, em seguida, faz o action
de gravação no arquivo, sem mais nenhuma manipulação desta mensagem.
Os parâmetros action()
são descritos aqui no RainerScript.