3

heroku ログをリモートの Linux マシンに送信し、それらを /var/log/ 内の個別のファイルにフィルター処理したいと考えています。

heroku 側では、次のコマンドを発行しました。

heroku drains:add syslog://my_linux_ip:514

ubuntu マシンで /etc/rsyslog.conf を編集、次の行のコメントを外しました。

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

/var/log/messagesに heroku ログ出力が表示されます。

ホスト名d.d423cb4bでタグ付けされています.......

/var/log/herokuに収集されるすべての heroku メッセージを取得するにはどうすればよいですか?

4

2 に答える 2

4

この行をrsyslog.confに追加するだけです

if $hostname startswith 'd.d423cb4b' then /var/log/heroku
& ~

明らかに、 d.d423cb4bを、自分のログで観察した実際のホスト名と一致させる必要があります。

& ~行は、この出力を他のログに複製しないように rsyslog に指示します。したがって、出力は /var/log/heroku に表示され、それ以外の場所には表示されません。

于 2012-08-01T13:35:22.497 に答える