@unk1nD000

Как продолжать выполнение задания игнорируя ошибки?

powershell job на sqlserver 2019: выбирается список пользователей из базы, и поиск их в ActiveDirectory.
Если пользователя не находит, шаг завершается ошибкой, а тк задание из 1 шага состоит, то оно по сути не выполняется.
Как сделать , чтобы задание продолжало выполняться игнорируя ошибки (не найденных пользователей)?

Ошибка
Executed as user: SQLUSER. A job step received an error at line 25 in a PowerShell script. The corresponding line is '        $this.Principal = (Get-ADUser -Identity $Name -ErrorAction SilentlyContinue).UserPrincipalName  '. Correct the script and reschedule the job. The error information returned by PowerShell is: 'Cannot find an object with identity: 'USERNAME' under: 'DC=KEK,DC=lol'.  '.  Process Exit Code -1.  The step failed.
  • Вопрос задан
  • 109 просмотров
Решения вопроса 1
Alex_Geer
@Alex_Geer
System Engineer
Для того чтобы задание продолжало выполняться игнорируя ошибки, связанные с не найденными пользователями, можно воспользоваться командой Try...Catch. В блоке Try выполняется код, который может вызвать ошибку, а в блоке Catch обрабатывается ошибка.

Пример использования:
Try {
    # Код для поиска пользователей в Active Directory
}
Catch [System.Exception] {
    # Обработка ошибки
}

В вашем случае, можно использовать Try...Catch для поиска пользователей в Active Directory. Если пользователь не найден, то будет вызвана ошибка, которая будет обработана в блоке Catch, и выполнение задания продолжится без ошибок.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы