Você pode tentar criar um modelo com algumas variáveis, como
source s_<%= localhost_name%> {
tcp(ip(0.0.0.0)
port(<%= log_port%>));
};
template t_<%= localhost_name%> {
template ("$MSGHDR$MSG\n");
template_escape(no);
};
destination d_<%= localhost_name%> {
file("<%= log_file%>" template(t_<%= localhost_name%>));
};
log {
source(s_<%= localhost_name%>);
destination(d_<%= localhost_name%>);
};
Isso gerará um arquivo que escutará todo o endereço TCP na porta do syslog e filtrará as mensagens de acordo.