我有三个任务在Microsoft Windows 2008 RS Standard Server上使用其任务计划程序运行。 这三个任务的工作都是触发发送电子邮件的PHP脚本。 两个在早上跑步,而另一个在晚上跑步。
早上运行的任务中有一个每天都会随机超时,看起来像是从今年1月初开始的,可能更多,因为这个脚本从2018年开始就在服务器上出现了,是在2010年代初创建的(不是我--以前的开发人员)。
我不确定任务超时是否会导致发送的电子邮件中的数据丢失(来自MySQL数据库)。
我在想,可能是与任务相关联的PHP脚本可能是问题的来源。 我看到这个答案,这里。
其他两个任务在大多数情况下运行得很好。
我不是一个系统管理员,我只是一个简单的web开发人员,试图弄清楚一些电子邮件中缺少数据是怎么回事。
您可以在错误日志中找到脚本的异常。 您可以在此答案中找到更多关于如何定位它的信息。
它肯定可能是脚本必须处理的数据量,特别是在较大的应用程序中,任务需要几个小时才能完成并不少见。
就我个人而言,在确保软件方面一切正常之后,我会检查服务器的使用年限(以及其他硬件参数)。
另外,我发现将执行日志写入文件(而不是错误日志)对于调试非常有用。 因此,例如,如果有一行我预计会导致问题,我会在它运行之前放置一些日志信息,在它运行之后放置更多的日志信息,只是为了知道它运行时没有出现问题。
这样,您就得到了一个包含每次执行中所发生的一切的摘要的文件。 如果您这样做,请继续小心,因为这些文件a)可能占用大量磁盘空间,b)可能最终包含敏感信息。只需保持登录直到您找到问题,然后删除日志代码和日志。