วิธีทำให้ TaskScheduler ล้มเหลวเมื่องานส่งคืนผลลัพธ์ต่างจาก 0


16

ฉันมีงานสำรองที่ล้มเหลวโดยไม่มีผลลัพธ์เป็นศูนย์ แต่ Task Scheduler บอกว่ามันทำงานได้อย่างถูกต้อง

มีวิธีใดที่จะบอกตัวกำหนดเวลางานว่างานล้มเหลวหรือไม่


สวัสดี Pablo เราจะต้องการข้อมูลเพิ่มเติม ชอบตัวกำหนดเวลางานที่เปิดตัวอย่างไร ไฟล์แบตช์ EXE มีอย่างอื่นอีกไหม Windows Backup นี้ที่คุณกำลังใช้งานอยู่หรือไม่? คุณลองทำอะไร
Ƭᴇcʜιᴇ007

1
ฉันใช้โปรแกรม wbadmin เพื่อเริ่มการสำรองข้อมูล แต่ฉันมีปัญหาเดียวกันกับไฟล์แบตช์ที่มีคำสั่ง 'exit 1' เดียว TaskScheduler มีรหัสข้อผิดพลาด แต่รายงานว่า Task ทำงานสำเร็จ
Pablo Montilla

ตัวกำหนดเวลางานเองจึงแสดงรหัสออกที่ไม่ใช่ศูนย์
Ƭᴇcʜιᴇ007

3
ใช่ แต่รายงานว่าภารกิจดำเนินการสำเร็จ ฉันรวบรวมว่าอาจมีการรายงานว่ามันสามารถทำงานได้ไม่ใช่งานตัวเองล้มเหลว แต่ดูเหมือนจะไม่มีประโยชน์
Pablo Montilla

คำตอบ:


4

หาก Task Scheduler ประสบความสำเร็จในการเปิดใช้งานและโปรแกรมที่เปิดใช้แล้วออกจากมุมมองของ Task Scheduler มันประสบความสำเร็จ (กล่าวคือไม่มีอะไรเลวร้ายเกิดขึ้นเช่นหนังสือรับรองผู้ใช้ที่ล้มเหลวในการเริ่มโปรแกรม)

โดยปกติหากคุณต้องการตรวจสอบสิ่งที่ไม่ดีที่เกิดขึ้นในระหว่างการเรียกใช้โปรแกรมคุณจะต้องให้โปรแกรมส่งการแจ้งเตือนบางอย่าง (เช่นผ่านอีเมลหรือโดยการบันทึกลงในไฟล์ที่คุณตรวจสอบในภายหลัง) หรือตั้งค่าโปรแกรมอื่น ตรวจสอบบางอย่างเกี่ยวกับการเรียกใช้โปรแกรมที่สามารถบ่งชี้ว่าเกิดข้อผิดพลาด

คุณพยายามแจ้งเตือนข้อผิดพลาดประเภทใด คุณกำลังตรวจสอบด้วยตนเอง แต่เพียงพยายามที่จะมีข้อผิดพลาดที่เห็นได้ชัดเจนมากขึ้น? หรือคุณมีโปรแกรมอื่นที่ตรวจสอบข้อผิดพลาด


2
ยังฉันคิดว่ามันผิดที่จะล้มเหลวและไม่รายงาน (หรืออย่างน้อยให้ตัวเลือกในการรายงาน) ความล้มเหลวของงานที่ดำเนินการ ขอบคุณ!
Pablo Montilla

1
ฉันยอมรับว่ามันจะมีประโยชน์หากตัวกำหนดเวลางานสามารถตรวจจับรหัสออกและส่งอีเมลตามผลลัพธ์ แต่ฉันไม่เชื่อว่ามันมีคุณสมบัตินั้น คุณพยายามรับอีเมลแจ้งเตือนหรือไม่ บางทีการเปิดตัว wbadmin ในสคริปต์ VBScript หรือ PowerShell ที่จะตรวจจับรหัสออกและทำอะไรกับมันจะเป็นไปได้สำหรับคุณหรือไม่?
Shannon Wagner

1
ใช่นั่นเป็นไปได้ มันยังใช้งานได้ ... ;) หวังว่า MS จะคิดว่านี่เป็นสิ่งที่มีประโยชน์ในการเพิ่มลงใน Windows 8
Pablo Montilla

6
นี่เป็นสิ่งที่น่าเหลือเชื่อสำหรับฉัน - ตัวกำหนดตารางงานมีตัวเลือกทั้งหมดสำหรับการกำหนดค่าการเริ่มการทำงานใหม่ในกรณีที่ 'ล้มเหลว' แต่ไม่ได้ตรวจสอบว่าการกระทำส่งคืนรหัสข้อผิดพลาดหรือไม่ ทำให้ฉันสงสัยว่าสิ่งใดในโลกนี้ถือเป็น 'ความล้มเหลว' สำหรับ Task Scheduler
mackenir

ในแง่ของคำตอบนี้ฉันต้องถาม: Task Scheduler ยังเรียกใช้การลองใหม่ตามรหัสออกหรือไม่
jpmc26

5

เป็นไปได้ที่จะ "เริ่ม" งานใหม่หากล้มเหลว

  1. ใช้รหัสต่อไปนี้ในแบตช์สคริปต์เพื่อสร้างเหตุการณ์ข้อผิดพลาดของระบบ:

    eventcreate / ID 100 / SO "ชื่อสคริปต์ของคุณ" / L แอปพลิเคชัน / T ข้อผิดพลาด / D "เหตุผลความล้มเหลวของคุณ"

  2. สร้างงานใหม่ด้วยทริกเกอร์ที่ตรวจสอบเหตุการณ์ของระบบและตัวกรองสำหรับหมวดหมู่และรหัสที่คุณเพิ่งเพิ่มเข้าไปในชุดงาน การกระทำของงานนี้คือแบตช์อีกครั้ง งานนี้ควรล่าช้าไปหนึ่งนาทีเพื่อให้แบทช์เดียวกันไม่เริ่มต้นสองครั้ง!

ระวังอย่าสร้างวงวนไม่สิ้นสุด

หวังว่าจะช่วย!


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