У меня проблема с использованием стоков системного журнала, как описано в https://devcenter.heroku.com/articles/logging.
Подводя итог, у меня есть экземпляр Ubuntu 10.04 на EC2, который работает rsyslogd
. Я также настроил группы безопасности, как они описывают, и добавил утечку системного журнала с помощью такой команды, как heroku drains:add syslog://host1.example.com:514
.
Я могу отправлять сообщения с консоли Heroku на свой rsyslogd
экземпляр через nc
. Я вижу, что они появляются в файле журнала, поэтому я знаю, что проблем с брандмауэром / группой безопасности нет. Однако Heroku, похоже, не пересылает сообщения журнала на сервер, который heroku drains
списки. Я ожидал увидеть HTTP-запросы, сообщения Rails и т. Д.
Есть ли что-то еще, что я могу сделать, чтобы понять это? Я новичок в rsyslogd
, поэтому я легко мог что-то упустить.
Я выяснил, что сделал не так, с помощью поддержки Heroku. (Спасибо, парни!)
Я использовал неправильное имя группы безопасности (default
вместо того logplex
). (Динозавры работают под default
так вот почему nc
работал.)
Это подходящие значения для полей в веб-интерфейсе AWS Security Group:
Custom TCP rule
514
098166147350/logplex
(НОТА: не default
)Мои два цента здесь:
Обратите внимание, что добавление номера порта (514) в конце URL-адреса стока важно. Сначала я думал, что префикса syslog: // должно хватить, но, видимо, этого не произошло.
Спасибо, что разместили это. Однако меня поразила одна вещь. Мне пришлось перезапустить свое приложение на heroku, прежде чем оно начало писать в новые стоки. (после того, как я попробовал так много всего!)