我正在尝试使用Ubuntu 12.04上的upstart启动New Relic监控插件MeetMe/newrelic_plugin_agent
。这是我写的脚本:
env USER=newrelic
env DAEMON="/usr/local/bin/newrelic_plugin_agent"
env DAEMONARGS=" -c /etc/newrelic/newrelic_plugin_agent.cfg"
start on startup
stop on shutdown
exec start-stop-daemon --start --chuid $USER --exec $DAEMON --$DAEMONARGS
以下错误将写入相应的upstart日志:Error starting /usr/local/bin/newrelic_plugin_agent: Cannot write to specified pid file path /var/run/newrelic/newrelic_plugin_agent.pid
如果我将--make-pidfile --pidfile /var/run/newrelic/newrelic_plugin_agent.pid
参数添加到start-stop-daemon
:
exec start-stop-daemon --start --make-pidfile --pidfile
/var/run/newrelic/newrelic_plugin_agent.pid --chuid $USER
--exec $DAEMON --$DAEMONARGS
日志包含start-stop-daemon: unable to open pidfile '/var/run/newrelic/newrelic_plugin_agent.pid' for writing (No such file or directory)
。
/var/run/newrelic/
文件夹存在,由newrelic
用户拥有,并分配给new relic
组。
如何编写upstart脚本,以便在启动时启动newrelic_plugin_agent?
答案 0 :(得分:1)
我还没有设法通过使用upstart来启动New Relic插件,但有一种更简单的方法可以让它在启动时启动。该插件还包含RedHat和Ubuntu(here)的init.d脚本。所以只是
/opt/newrelic_plugin_agent/newrelic_plugin_agent.deb
文件夹中的/etc/init.d
:cp /opt/newrelic_plugin_agent/newrelic_plugin_agent.deb /etc/init.d/newrelic_plugin_agent
sudo chmod a+x /etc/init.d/newrelic_plugin_agent
update-rc.d newrelic_plugin_agent defaults
/etc/init.d/newrelic_plugin_agent start