Я пытаюсь запустить statsD в Ubuntu, но у меня возникают проблемы.
Если я запускаю его, он работает, но блокирует продолжение работы шеф-повара, но он работает и отображается в графите.
Однако, если я запускаю его так (или использую другие методы, чтобы запустить его в фоновом режиме):
(/usr/bin/node /opt/statsd/stats.js /opt/statsd/localConfig.js) &
он не блокирует шеф-повара, но в графите ничего не отображается, однако я знаю, что он все еще работает, потому что
ps aux | grep stat
показывает команду как работающую (не включая команду grep).
Я пытался сделать это с помощью forever.js, но npm просто сообщает, что имеет failed to fetch from registry: forever
Редактировать:
Хорошо, мне удалось заставить его начать использовать
nohup /usr/bin/node /opt/statsd/stats.js /opt/statsd/localConfig.js
Это запускает statsD (хорошо) и не блокирует повара (тоже хорошо), но теперь он отказывается останавливаться, когда я пытаюсь
sudo killall -r stat
Оглядываясь назад, это потому, что nohup не дает ему получить сигнал об уничтожении.
Таким образом, возникает вопрос, как заставить его работать в фоновом режиме с помощью nohup (или что-то в этом роде), но при этом иметь возможность остановить statsD, чтобы его можно было перезапустить (для любого потенциального изменения в конфигурации).
РЕДАКТИРОВАТЬ:
Хорошо, изменив команду запуска на:
nohup /usr/bin/node /opt/statsd/stats.js /opt/statsd/localConfig.js >> /var/log/statsd.log 2>&1& \n echo $! /opt/statsd/statds.pid
, я смог сохранить pid, а затем с помощью
kill -9 `/opt/statsd/statsd.pid`
Мне удалось убить процесс, однако он по-прежнему оставляет работающим rcp.statd -L
, у которого есть отдельный pid.