Я надеюсь, что вы можете помочь, иногда задача резервного копирования завершается сбоем, обычно это временная ошибка VSS, и повторный запуск резервного копирования обычно завершается успешно. Я пытаюсь использовать фильтр событий в Task Schdeuler, чтобы запустить резервное копирование для перезапуска. У меня не было проблем с этим, просто выбрав EventID (5635), но у меня запущено несколько заданий резервного копирования, поэтому мне нужно быть более конкретным, где я наталкиваюсь на кирпичную стену.

Данные события XML выглядят следующим образом:

<EventData>
<Data>
Backup job Server Backup 1 completed with warnings. Major Warning: One or more Hyper-V guests have reported errors that could result in an incomplete backup. Check each guest's event log and review any errors reported. Major Warning: Volume Shadow Copy Error 0x800423f4 - writer error: non retryable Destination: Local hard drive Bytes: 7191744309979 Start time: 01/01/2021 22:00:02 End time: 01/01/2021 22:12:25 Duration: 00:12:23.0745879 Job Execution ID: 1.679
</Data> 
</EventData>

Я пытаюсь настроить фильтр событий на текст «Резервная копия сервера 1» и использую следующий запрос:

<QueryList>
<Query Id="0" Path="Application">
<Select Path="Application">*[System[Provider[@Name='BackupAssist'] and (Level=3) and (EventID=5635) and *[EventData[Data[1]='Server Backup 1']]]]</Select>
</Query>
</QueryList>

Однако это не срабатывает при записи события. Я подозреваю, что это проблема со строкой с подстановочными знаками, но я не уверен.

Любая помощь с благодарностью получена Робом

answer

Это не реализовано, в документации показаны ограничения и перечислены три функции, которые вы можете использовать:

[...] Node Tests: Only node names and NCName tests are supported. The "*" character, which selects any character, is supported. [...]

The position function, and its shorthand array reference, is supported (on leaf nodes only).
The Band function is supported. The function performs a bitwise AND for two integer number arguments. If the result of the bitwise AND is nonzero, the function evaluates to true; otherwise, the function evaluates to false.
The timediff function is supported.[...]

Вы можете создать запланированную задачу с триггером Event ID, чтобы запустить сценарий исправления, в котором вы можете выполнить дополнительную проверку, чтобы определить, следует ли продолжить выполнение сценария.