Como fazer o TaskScheduler falhar quando a tarefa retorna um resultado diferente de 0

14

Eu tenho uma tarefa de backup que falha com um resultado diferente de zero, mas o Agendador de Tarefas diz que executou a tarefa corretamente.

Existe alguma maneira de informar ao Agendador de Tarefas que a tarefa falhou?

    
por Pablo Montilla 01.09.2011 / 15:22

2 respostas

3

Se o Agendador de Tarefas iniciar a tarefa e o programa iniciado tiver êxito, então, do ponto de vista do Agendador de Tarefas, foi um sucesso (ou seja, nada de ruim aconteceu como uma credencial de usuário com falha ao iniciar o programa).

Normalmente, se você quiser monitorar algo ruim que aconteceu durante a execução de um programa, o programa envia um alerta de algum tipo (por exemplo, via e-mail ou registrando em um arquivo que você analisa posteriormente) ou então outro programa para monitorar algo sobre a execução do programa que poderia indicar se ocorreu um erro.

Que tipo de notificação de erro você está tentando obter? Você está fazendo uma revisão manual, mas apenas tentando ter o erro mais perceptível? Ou você tem outro programa monitorando erros?

    
por 10.02.2012 / 03:17
3

É possível "reiniciar" a tarefa se ela falhar.

  1. Use o seguinte código no script em lote para criar um evento de erro do sistema:

    eventcreate /ID 100 /SO "Your Script Name" /L APPLICATION /T ERROR /D "Your failure reason"

  2. Crie uma nova tarefa com um acionador que monitore os eventos do sistema e filtre a categoria e o ID que você acabou de adicionar ao lote. A ação dessa tarefa é o lote novamente. Esta tarefa deve ser atrasada em um minuto, para que o mesmo lote não seja iniciado duas vezes!

Cuidado para não criar um loop infinito.

Espero que ajude!

    
por 22.07.2016 / 14:44