除了像http://upstart.ubuntu.com/wiki/Debugging中建议的那样执行明确的日志记录指令外,有没有办法启用新贵正在发生的事情的输出?
- 引发什么事件
- 什么服务改变了它的状态(启动/停止/停止)
- 发出了什么信号
- 启动时产生的服务输出什么
除了像http://upstart.ubuntu.com/wiki/Debugging中建议的那样执行明确的日志记录指令外,有没有办法启用新贵正在发生的事情的输出?
好的,我找到了一种方法:
$ sudo initctl log-priority # gives the actual (default) logging level
$ sudo initctl log-priority --help # gives available logging levels
$ sudo initctl log-priority info # is enough to get :
$ tail -f /var/log/syslog # - log of upstart events
$ tail -f /var/log/boot.log # - log of services output
在较新的版本中,您可以在以下位置找到新贵日志:
/var/log/upstart
它为尝试启动的每个进程都有一个日志。
initctl log-priority info
记录事件,但忽略程序输出。
如果程序输出对您很重要,我认为补充解决方案是在您的 init 脚本中使用 logger:
script
myawesomeprog 2>&1 | logger -t myawesomeprog
end script
因为使用 syslog 比手动管理更好/var/log
,例如http://upstart.ubuntu.com/wiki/Debugging建议(在 08/2012 中)。