linux – 如何调试间歇性失败的upstart脚本?

linux – 如何调试间歇性失败的upstart脚本?,第1张

概述我有一个进程,我希望尽快通过任何方式重新启动我的系统,所以我使用upstart脚本,但有时我注意到我的进程在硬重启期间没有启动(插入并启动所以我认为我的暴发脚本在重启后没有被踢进去.我相信Hard Reboot没有运行级别. 我很困惑,为什么有时在重启期间它有效,但有时它不起作用.我该如何调试呢? 以下是我的新贵脚本: # sudo start helper# sudo stop helper 我有一个进程,我希望尽快通过任何方式重新启动我的系统,所以我使用upstart脚本,但有时我注意到我的进程在硬重启期间没有启动(插入并启动所以我认为我的暴发脚本在重启后没有被踢进去.我相信Hard Reboot没有运行级别.

我很困惑,为什么有时在重启期间它有效,但有时它不起作用.我该如何调试呢?

以下是我的新贵脚本:

# sudo start helper# sudo stop helper# sudo status helperstart on runlevel [2345]stop on runlevel [!2345]chdir /datarespawnpre-start script  echo "[`date`] Agent Starting" >> /data/agent.log  sleep 30end scriptpost-stop script  echo "[`date`] Agent StopPing" >> /data/agent.log  sleep 30end scriptlimit core unlimited unlimitedlimit nofile 100000 100000setuID goldyexec python helper.py

有没有办法调试出来发生了什么?我相信,我可以很容易地重现这一点.关于我在这里可以做什么的任何指示?

注意:

在重新启动期间,有时我会看到我在启动前脚本中的日志记录,但有时我在重新启动后根本看不到日志记录,这意味着我的upstart脚本未被触发.有什么我需要在运行级别上更改以使其工作?

我有一个在Hypervisor中运行的VM,我正在使用Ubuntu.

解决方法 您的进程运行良好,但在系统启动期间,许多事情都是平行的.

如果挂载(使/ data文件夹可用)比预启动脚本运行得晚,您将看不到启动前脚本的“结果”.

我建议提前30点睡觉(BTW 30秒似乎过于宽松):

pre-start script  sleep 30 # sleep 10 should be enough  echo "[`date`] Agent Starting" >> /data/agent.logend script
总结

以上是内存溢出为你收集整理的linux – 如何调试间歇性失败的upstart脚本?全部内容,希望文章能够帮你解决linux – 如何调试间歇性失败的upstart脚本?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1030593.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存