将rsyslog消息拆分成基于源码的文件(heroku drain)

我设置了一个heroku日志消耗,在我的日志logging实例上将消息发送到端口514。 尽pipe如此,日志服务器发送消息/ var / log / syslog,我希望它将它们发送到/var/log/appname.log或其他东西,以便它们被隔离。

我该怎么做呢? 我读了一些基于主机名的分裂,但我不知道如何确定哪个主机名heroku将发送。

Heroku将“Drain ID”连接到您设置的每个日志stream失并将其作为主机名发送。 它会保持不变,直到你消除了stream失。

您可以通过以下方式获得漏洞ID:

heroku drains > syslog://your-url (drain-id) 

那么这只是configuration/etc/rsyslog.conf 。 这个主机名filter适用于我

 if $hostname isequal 'drain-id' then /var/log/app-name.log & ~