使用Laravel 5调度作业时,我注意到当有多个作业同时工作时,作业的输出是混合的!
有些奇怪,因为如果它们运行几分钟,并且每个都有简单的输出,比如:
Job X, step 1: complete
Job X, step 2: complete
Job X, step 3: complete
我在"预定作业输出"电子邮件中得到的输出将是:
Job 1, step 1: complete
Job 2, step 1: complete
Job 2, step 2: complete
Job 1, step 2: complete
Job 1, step 3: complete
另外,有时我收到的不仅仅是一封工作电子邮件,比如2封或多封未完成的电子邮件。只有最后一个充满了输出。类似:
1°电子邮件:
Job 1, step 1: complete
2°电子邮件:
Job 1, step 1: complete
Job 1, step 2: complete
3°电子邮件:
Job 1, step 1: complete
Job 1, step 2: complete
Job 1, step 3: complete
我确信这是相同的作业,因为在输出的顶部,我会打印作业的时间戳和名称。为什么?
因为要发送输出电子邮件,laravel使用->sendOutputTo($FILE_PATH)保存作业
如果对同时工作的多个作业使用相同的$FILE_PATH,则输出将如所述混乱不堪。