Cách làm cho TaskScheduler thất bại khi tác vụ trả về kết quả khác 0


16

Tôi có một nhiệm vụ sao lưu thất bại với kết quả khác không, nhưng Trình lập lịch tác vụ nói rằng nó đã thực thi nhiệm vụ một cách chính xác.

Có cách nào để nói với Trình lập lịch tác vụ rằng tác vụ thất bại không?


Xin chào Pablo, Chúng tôi sẽ cần thêm thông tin. Giống như làm thế nào / trình lập lịch tác vụ là gì? Một tập tin bó, một EXE, cái gì khác? Đây có phải là Sao lưu Windows mà bạn đang xử lý không? Bạn đã thử những gì?
Ƭᴇcʜιᴇ007

1
Tôi đang sử dụng chương trình wbadmin để bắt đầu sao lưu, nhưng tôi gặp vấn đề tương tự với một tệp bó với một câu lệnh 'exit 1'. TaskScheduler bao gồm mã lỗi, nhưng báo cáo Nhiệm vụ là đã chạy thành công.
Pablo Montilla

Vì vậy, Trình lập lịch tác vụ tự hiển thị mã thoát khác không?
Ƭᴇcʜιᴇ007

3
Có, nhưng báo cáo nhiệm vụ như được thực hiện thành công. Tôi tập hợp rằng có lẽ nó báo cáo rằng nó có thể thực thi nhiệm vụ, không phải bản thân nhiệm vụ thất bại, nhưng có vẻ không hữu ích lắm.
Pablo Montilla

Câu trả lời:


4

Nếu Trình lập lịch tác vụ khởi chạy thành công tác vụ và chương trình đã khởi chạy thoát, thì theo quan điểm của Trình lập lịch tác vụ thì đó là một thành công (nghĩa là không có gì xấu xảy ra như thông tin người dùng thất bại khi bắt đầu chương trình).

Thông thường nếu bạn muốn theo dõi điều gì đó tồi tệ đã xảy ra trong khi chạy chương trình, bạn sẽ có chương trình gửi một cảnh báo nào đó (ví dụ: qua email hoặc bằng cách đăng nhập vào một tệp mà sau đó bạn xem lại), hoặc nếu không thì thiết lập chương trình khác để giám sát một cái gì đó về chương trình chạy có thể cho biết liệu có lỗi xảy ra hay không.

Loại thông báo lỗi nào bạn đang cố gắng nhận được? Bạn đang thực hiện đánh giá thủ công nhưng chỉ cần cố gắng để có lỗi đáng chú ý hơn? Hay bạn có một chương trình giám sát lỗi khác?


2
Tuy nhiên, tôi nghĩ rằng nó sai khi thất bại và không báo cáo (hoặc ít nhất là đưa ra một tùy chọn để báo cáo) thất bại của nhiệm vụ được thực hiện. Cảm ơn!
Pablo Montilla

1
Tôi đồng ý sẽ hữu ích nếu Trình lập lịch tác vụ có thể phát hiện mã thoát và gửi email dựa trên kết quả. Nhưng tôi không tin rằng nó có tính năng đó. Bạn đang cố gắng để có được một cảnh báo email? Có thể gói việc khởi chạy wbadmin trong tập lệnh VBScript hoặc PowerShell để phát hiện mã thoát và làm điều gì đó với nó sẽ là một khả năng cho bạn?
Shannon Wagner

1
Yup, đó là một khả năng. Nó cũng hoạt động ...;) Hy vọng MS sẽ nghĩ rằng đây là một cái gì đó hữu ích để thêm vào Windows 8.
Pablo Montilla

6
Điều này gây khó chịu cho tôi - Trình lập lịch tác vụ có tất cả các tùy chọn để định cấu hình khởi động lại một hành động trong trường hợp nó 'không thành công', nhưng thậm chí không kiểm tra xem một hành động có trả về mã lỗi hay không. Làm cho tôi tự hỏi những gì trên trái đất thực sự cấu thành một 'thất bại' cho Trình lập lịch tác vụ.
mackenir

Trước câu trả lời này, tôi phải hỏi: Trình lập lịch tác vụ thậm chí có kích hoạt thử lại dựa trên mã thoát không?
jpmc26

5

Có thể "khởi động lại" nhiệm vụ nếu thất bại.

  1. Sử dụng mã sau trong tập lệnh bó để tạo sự kiện lỗi hệ thống:

    eventcreate / ID 100 / SO "Tên tập lệnh của bạn" / L ỨNG DỤNG / T ERROR / D "Lý do thất bại của bạn"

  2. Tạo một tác vụ mới với trình kích hoạt theo dõi các sự kiện và bộ lọc hệ thống cho danh mục và ID bạn vừa thêm trong lô. Hành động của nhiệm vụ này là một lần nữa. Nhiệm vụ này nên được trì hoãn trong một phút, để cùng một đợt không được bắt đầu hai lần!

Hãy cẩn thận để không tạo ra một vòng lặp vô hạn.

Mong rằng sẽ giúp!


Tôi thích cách tiếp cận này :)
DavidPostill
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.