任务计划程序运行了两次任务

更新:现在已经连续两天发生了。

更新:现在包括计划任务和图像的XML。

位于伦敦的两台服务器,包括Windows 2012,都定于星期一至星期五下午三点运行。 这已经成立了过去5个月没有问题。

然而,8月28日星期一,他们都在下午3点,然后在下午4点再次执行预定的任务。 第一次报道的时候,我认为这是一个小时后的第二天巧合。 但是,我无法解释为什么会发生,以及是否与时钟变化有关。

一台服务器的相关日志(另一台服务器的日志也遵循这种模式):

事件129 15:00:20任务计划程序启动任务“\ 3pm”,具有进程ID 2388的实例“C:\ Program Files(x86)\ PHP \ v5.4 \ php.exe”。

事件100 15:00:20任务计划程序启动用户“x \ y”的“\ 3pm”任务的“{75a3590f-dec1-4dee-bd27-73d63a50a9d7}”实例。

事件200 15:00:20任务计划程序启动任务“\”中的实例“{75a3590f-dec1-4dee-bd27-73d63a50a9d7}”中的操作“C:\ Program Files文件(x86)\ PHP \ v5.4 \ php.exe”下午3点”。

事件201 15:00:23任务计划程序成功完成任务“\ 3pm”,实例“{75a3590f-dec1-4dee-bd27-73d63a50a9d7}”,操作“C:\ Program Files文件(x86)\ PHP \ v5.4 \ php .exe“返回码0。

事件129 16:00:20任务计划程序启动任务“\ 3pm”,实例“C:\ Program Files文件(x86)\ PHP \ v5.4 \ php.exe”与进程ID 1224。

事件100 16:00:20任务计划程序启动用户“x \ y”的“\ 3pm”任务的“{3dd46ca9-c525-4796-86b5-5e513fd45f26}”实例。

事件200 16:00:20任务计划程序在任务“\”的实例“{3dd46ca9-c525-4796-86b5-5e513fd45f26}”中启动了“C:\ Program Files(x86)\ PHP \ v5.4 \ php.exe”下午3点”。

事件201 16:00:23任务计划程序成功完成任务“\ 3pm”,实例“{3dd46ca9-c525-4796-86b5-5e513fd45f26}”,操作“C:\ Program Files文件(x86)\ PHP \ v5.4 \ php .exe“返回码0。

我见过这个问题计划任务运行两次不时指向一个错误http://support.microsoft.com/kb/2461249是原因。 但是,这不包括Server 2012中的问题操作系统列表。

我正在努力解释这个,任何人都可以吗?

计划任务的XML导出是:

<?xml version="1.0" encoding="UTF-16"?> <Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task"> <RegistrationInfo> <Date>2013-04-16T14:04:17.4897806</Date> <Author>x\y</Author> </RegistrationInfo> <Triggers> <CalendarTrigger> <StartBoundary>2013-04-17T15:00:20</StartBoundary> <Enabled>true</Enabled> <ScheduleByWeek> <DaysOfWeek> <Monday /> <Tuesday /> <Wednesday /> <Thursday /> <Friday /> </DaysOfWeek> <WeeksInterval>1</WeeksInterval> </ScheduleByWeek> </CalendarTrigger> </Triggers> <Principals> <Principal id="Author"> <UserId>x\y</UserId> <LogonType>Password</LogonType> <RunLevel>LeastPrivilege</RunLevel> </Principal> </Principals> <Settings> <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy> <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries> <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries> <AllowHardTerminate>true</AllowHardTerminate> <StartWhenAvailable>false</StartWhenAvailable> <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable> <IdleSettings> <StopOnIdleEnd>true</StopOnIdleEnd> <RestartOnIdle>false</RestartOnIdle> </IdleSettings> <AllowStartOnDemand>true</AllowStartOnDemand> <Enabled>true</Enabled> <Hidden>false</Hidden> <RunOnlyIfIdle>false</RunOnlyIfIdle> <WakeToRun>false</WakeToRun> <ExecutionTimeLimit>P3D</ExecutionTimeLimit> <Priority>7</Priority> </Settings> <Actions Context="Author"> <Exec> <Command>"C:\Program Files (x86)\PHP\v5.4\php.exe"</Command> <Arguments>-f "c:\a.php"</Arguments> </Exec> </Actions> </Task> 

计划任务的触发器配置计划任务的历史记录

10月29日17:00 – 更新 – 两台服务器在15:00和16:00再次运行计划任务。 我现在更新了调度程序运行的php文件,实际上并没有做任何事情,而我正在试图解决这个问题。 我打算重新启动一台服务器,看看这个明天是否会改变。

10月30日08:25 – 更新 – 导出任务XML时,我记得我没有包括第二台服务器上的计划任务是通过导入第一个创build的任务的XML创build的。 这两个任务之间的唯一区别是他们正在执行的php文件的path以及他们正在运行的用户帐户。

10月30日16:30 – 更新 – 已重新启动的服务器不再显示此行为,计划任务运行一次。 我将等待几天,然后重新启动第二台服务器,以防有人对诊断原因/发生的方式有任何想法

11月6日18:00 – 更新 – 我们将所有更新应用到第二台服务器并重新启动。 我们认为这样可以解决问题,但下午三点又跑了两次,一次是在下午三点,一次是在四点。 我看了其他计划的工作,他们只跑了一次。

我们刚刚注意到本周发生的生产服务器(也是Windows Server 2012)上的相同问题。 它也开始后,我们的时钟回来了一个小时(这是2013年11月3日,在这里在多伦多)。

截至2013年11月12日更新:

  • 重新启动不起作用(任务继续运行两次)
  • 导出和重新导入任务不起作用(任务继续运行两次)
  • 在GUI中手动重新创build任务确实解决了这个问题

此外,微软在与微软(通过我们的系统pipe理员)进一步讨论后表示: “…该问题在Windows Server 2012中得到了确认,并且仅在Windows 8.1 / Windows Server 2012 R2的下一个版本中得到修复” 。

在我们的组织里,我们在十月二十八号的冬天时间有同样的问题。 我们只有这个问题与任何导入的XML文件的任何其他人都有同样的问题?

问候Stijn

只是为了舒服:你没有检查触发选项“跨时区同步”? 之后,任务计划程序正在使用UTC。

自DST转换以来,这个问题本周就出现了。 我知道这不是一个好的答案,但是删除和重新创build这个工作似乎解决了这个问题。 我testing了几个晚上复制的作业,重新创build的作业没有重复。