Eu tenho um rsyslogd no Ubuntu 14.0.1:
$ModLoad imtcp
$InputTCPServerRun 514
$template FILENAME,"/var/log/%fromhost%/syslog.log"
*.* ?FILENAME
se correr
logger -p local0.crit -n 10.240.157.116 -u /dev/null test
Em uma máquina remota, posso ver o pacote syslog no rsyslogd-server usando tcpdump:
15:43:43.586827 IP 10.240.180.245.37261 > 10.240.157.116.514: SYSLOG local0.critical, length: 33
No entanto, nenhum log é gravado no rsyslogd-server para o host remoto. Os logs locais são gravados como esperado em /var/log/rsyslogd-server-hostname/bla
De acordo com a página de manual do logger, '-n' enviará um pacote UDP, que é o que você parece estar vendo no tcpdump (apenas um pacote, não um handshake TCP, etc.).
Sua configuração rsyslogd está esperando apenas entrada no TCP (InputTCPServerRun).
Você provavelmente quer: