กำหนดเวลางาน Windows Server 2016 ที่กำหนดจะต้องเป็นอนาคต


20

เรามีเซิร์ฟเวอร์ปี 2012 ที่มีงานประมาณ 20 งานที่ใช้สำหรับการตรวจสอบ เราได้สร้างเซิร์ฟเวอร์ปี 2016 เพื่อแทนที่และเมื่อฉันย้ายงานไปยังเซิร์ฟเวอร์ใหม่ฉันพบปัญหา งานส่วนใหญ่ของเราทำงานทุกสองสามนาที

ใน Server 2012 เราจะจัดตารางเวลาภารกิจให้เริ่มต้นที่ 1200AM ของวันปัจจุบัน (ดังนั้นเวลาในอดีต) และเปิดใหม่ทุก ๆ X นาที งานจะเริ่มในเวลาที่กำหนดไว้ในครั้งต่อไป สมบูรณ์

ใน Server 2016 กำหนดการที่เริ่มต้นในอดีตจะไม่ทำงาน ดังนั้นเราต้องกำหนดเวลาให้เริ่มในอนาคต สิ่งนี้ดีจนกระทั่งคุณรีบูท ตอนนี้เวลาเริ่มต้นในอดีตและจะไม่ทำงาน มันไม่ได้ลงทะเบียนการทำงานที่ล้มเหลว คอลัมน์เวลาเรียกใช้งานถัดไปแสดงว่าควรจะทำงาน แต่จะไม่ทำงาน

ตัวอย่างกำหนดการปัจจุบัน

นอกจากการสร้างทริกเกอร์สองตัวแล้วสิ่งหนึ่งที่เริ่มในอนาคตและอีกอย่างหนึ่งที่เริ่มในการรีบูต (ซึ่งเราไม่ต้องการทำเพราะงานบางอย่างควรทำงานในเวลาที่กำหนดเท่านั้น) มีวิธีที่ดีกว่าไหม นี่น่าจะเป็นบั๊ก รุ่น 2012 ใช้งานได้ดี

UPDATE

มีวิธีแก้ปัญหาสำหรับสิ่งนี้ สร้างกำหนดการหนึ่งครั้งที่ทำงานไปเรื่อย ๆ วิธีนี้ทำงานหลังจากรีสตาร์ทเช่นเดียวกับที่คุณคาดหวัง ฉันรู้ว่ามันไม่ได้ดีสำหรับตารางเวลาที่ "แปลก" แต่ทำงานได้ดีสำหรับสิ่งที่เราต้องการเรียกใช้ทุก ๆ 3 นาทีหรืออะไรก็ตาม


1
ฉันมีปัญหาเดียวกันและฉันไม่พบวิธีแก้ไข มีไหม ดูเหมือนว่าเช่นข้อผิดพลาดที่มีขนาดใหญ่ นอกจากนี้ยังพบว่างานของ Google Chrome ทำงานได้ แต่งานที่ฉันทำไม่ได้ ดังนั้นอาจเป็นปัญหาการอนุญาตลึก
Tyler

ฉันพบว่าถ้าฉันสร้างกำหนดการ "ครั้งเดียว" ที่เริ่มในอนาคตและวิ่งไปเรื่อย ๆ มันก็ใช้ได้ ยังไม่พบอะไรอีกเลย
SteveB

ข้อผิดพลาดดังกล่าวจะได้รับอนุญาตให้เข้าสู่ระบบ ฉันไม่สามารถเชื่อเพียงคุณและฉันได้พบมัน มีวิธีที่เราสามารถรายงานเพื่อแก้ไขได้หรือไม่
ไทเลอร์

ปัญหานี้ยังจับฉันเมื่อโยกย้ายจาก Windows Server 2012 ถึง 2016 และฉันคิดว่าฉันพบคำอธิบาย (ดูคำตอบของฉัน) คุณแน่ใจหรือว่าเวอร์ชั่นก่อนหน้าของ Windows ทำงานผิดเพี้ยนไป
Heinzi

2
ใช่. 2012 ประพฤติตามที่เราทุกคนคิดเอาเอง
SteveB

คำตอบ:


5

FYI - ฉันยืนยันกับ Microsoft ผ่านทางตั๋วสนับสนุนที่ฉันเปิดเมื่อวานนี้ว่าเป็นข้อบกพร่อง ฝ่ายสนับสนุนด้านเทคโนโลยียืนยันว่ามันถูกจัดประเภทภายในว่าเป็นจุดบกพร่องและกำลังมีการพัฒนาโปรแกรมแก้ไข ฉันได้รับวันที่เป้าหมายการเปิดตัวแพตช์ในเดือนกรกฎาคม / สิงหาคม

สิ่งนี้มีผลกระทบต่อทั้ง Windows 10 และ Server 2016 ระบบทดสอบของฉันได้รับการติดตั้งจนถึงการอัพเดทล่าสุด ปัญหาไม่ได้เกิดขึ้นใน Server 2012 R2 และ Windows 7

แก้ไข - อาจเป็นเดือนสิงหาคม แต่แน่นอนในเดือนกันยายน 2560 ปัญหานี้ได้รับการแก้ไขในระบบที่ฉันได้ทำการทดสอบ


ขอขอบคุณสำหรับข้อมูล! ฉันจะโมโหด้วยความขุ่นมัว งานของฉันถูกนำเข้าจากกล่อง Server 2012 ที่เก่ากว่าไปยังเครื่อง Server 2016 ใหม่ นั่นคือเมื่อฉันเริ่มเห็นปัญหานี้
David Gunderson

ขอบคุณสำหรับความพยายามของคุณ คุณรู้หรือไม่ว่าแพทช์ได้รับการเผยแพร่แล้ว (ตุลาคม 2017)? คุณมีการอ้างอิงถึงบทความ KB ที่เกี่ยวข้องหรืออะไรทำนองนั้น?
yossiz74

ฉันไม่มี KB สำหรับสิ่งนี้ แต่ฉันได้พบในการทดสอบว่าตั้งแต่โปรแกรมปรับปรุงสะสมเดือนกันยายน 2017 ปัญหาได้หายไปดังนั้นฉันจึงเชื่อว่าตอนนี้ได้รับการแก้ไขแล้ว
Tom Collins

ตั้งแต่กุมภาพันธ์ 2018 ใน Win Server 2016 งาน "ทำซ้ำทุกๆ XX นาที" จะไม่ทำงานหากฉันปิดใช้งานและเปิดใช้งานอีกครั้ง
Ben Amada

4

ปัญหานี้ดูเหมือนว่าจะส่งผลกระทบต่องานด้วยRepeat task every: ...ชุดตัวเลือกเท่านั้น

จนถึงตอนนี้ผมก็รู้สึกว่าtrigger at X, then repeat every 10 minutesเป็นเพียงวิธีที่ซับซ้อนโดยไม่มีความจำเป็นที่จะเขียนtrigger at every xx:x0ใน Task Scheduler

เห็นได้ชัดว่าไม่ใช่ เห็นได้ชัดว่ามันหมายถึงสิ่งที่มันบอกว่า: งานถูกทริกเกอร์X แล้วและจากนั้นจะมีการทำซ้ำเท่านั้น ไม่มีทริกเกอร์เริ่มต้นไม่มีการซ้ำซ้อน ฉันดูเหมือนว่าไม่มีวิธีง่ายๆในการกำหนดเวลาtrigger at every xx:x0ใน Task Scheduler (หรือมีหรือไม่นั่นอาจทำให้คำถาม Serverfault แยกกันได้ดี) ข้อเท็จจริงที่คอลัมน์ "Next Run Time" แสดงสิ่งที่แตกต่างกันนั้นไม่มีประโยชน์มาก

เรา "แก้ไข" ปัญหานี้โดยกำหนดเวลาให้ภารกิจทำงานเวลา 12.00 นทุกวัน (แทนที่จะเป็นเพียงวันเดียว) จากนั้นทำซ้ำทุก...นาทีเป็นเวลา 1 วัน ซึ่งหมายความว่าหากการรีบูตเกิดขึ้นในเวลา 12:00 น. งานจะกลับมาทำงานต่อ มันไม่เหมาะ แต่เป็นการประนีประนอมที่ยอมรับได้ที่นี่

ฉันเดาว่าคุณสามารถลด "task downtime" ลงได้ 1 ชั่วโมงโดยสร้างหนึ่งทริกเกอร์สำหรับทุก ๆ ชั่วโมงและให้ทำซ้ำหลังจากนั้นทุก...นาทีเป็นเวลา 1 ชั่วโมง

น่าแปลกที่ดูเหมือนว่ามันเป็นเช่นนั้นมาตลอด (ดูความคิดเห็นแรกสำหรับคำตอบนี้ ) เราไม่เคยสังเกตจนกระทั่งตอนนี้ ตามความคิดเห็นอื่น ๆ ของคำตอบที่เชื่อมโยงวิธีบัญญัติในการแก้ไขปัญหานี้คือการเปิดใช้งานRun task as soon as possible after a scheduled start is missedตัวเลือก

ใช่มันเป็นข้อผิดพลาด แต่เป็นคอลัมน์ "เวลาทำงานถัดไป" ซึ่งเป็นรถไม่ใช่การตั้งเวลาจริง


ปัญหาเดียวของการจัดตารางเวลาสำหรับวันนี้คือภารกิจการตรวจสอบของเรา ฉันไม่ต้องการไปหลายชั่วโมงโดยไม่มีพวกเขา
SteveB

-1

1 . Windows 2016 Server จำเป็นต้องมีตัวเลือกเหล่านี้ในงานของคุณ:

  • เรียกใช้งานโดยเร็วที่สุดหลังจากพลาดกำหนดการเริ่มต้นหรือ
  • หากงานล้มเหลวให้รีสตาร์ททุกครั้ง

ฉันจดบันทึกตัวเลือกเหล่านี้ในภาพหน้าจอ

2 . เพิ่มทริกเกอร์เพิ่มเติม เช่น:

  • เมื่อสร้างหรือแก้ไขงาน
  • เมื่อคุณเริ่ม

เป็นต้นภายในความหมายของ: เพื่อย้ายงานเพื่อเริ่มในเวลาที่ต้องการ

3 . ในบางงานใน Windows 2016 - ใช้แนวทางนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.