找不到perl错误日志

Lin*_*nto 1 perl centos

我有一个perl文件(例如:test.pl),它执行一些数据库操作.

在测试时,它的工作正常.

我使用该命令将此文件作为后台进程执行

perl test.pl &
Run Code Online (Sandbox Code Playgroud)

它的工作正常了几天.

但几天后,文件执行停止了.

如何找到原因或查看错误?

我检查了日志文件"/ var/log/httpd/error_log",但找不到任何内容.

我将perl文件保存在服务器中,该服务器在Cent OS中运行.

有谁有想法?

Gli*_*ire 6

没有'perl错误日志'

但您可以定义要保存的输出的目标,只需运行您的脚本,如下所示:

perl test.pl >> /var/log/some-log-file.log 2>&1 &
Run Code Online (Sandbox Code Playgroud)

这将重定向STDOUT(正常shell输出)和STDERR(错误输出)/var/log/some-log-file.log而不是终端.

您可能还希望使用nohup脚本忽略HANGUP(注销)信号,这可能会导致意外终止:

nohup perl test.pl >> /var/log/some-log-file.log 2>&1 &
Run Code Online (Sandbox Code Playgroud)

显然,无论您运行脚本的用户是否需要具有对日志文件的写入权限.

  • "我认为不会有任何许可问题" - 只是一个巨大的潜在安全漏洞:-) (2认同)