Об обработке ошибок при использовании интерфейса командной строки AWS со скриптом Powershell - PullRequest
0 голосов
/ 10 января 2019

Содержимое ошибки интерфейса командной строки AWS не выводится на консоль Powershell.

Назначение

Я хочу реализовать следующую обработку ошибок.

  1. Я хочу вывести содержимое ошибки на консоль.
  2. Я хочу остановить обработку в том месте, где произошла ошибка.

Что я пробовал

Откройте файл сценария (ErrorTest.ps1) из Powershell ISE и выполните

ErrorTest.ps1

$ErrorActionPreference = "Stop"

trap {
    $error[0] | Format-List -Force
}

aws events disable-rule --name Test --profile not_exist_profile

Write-Host Finished

Ожидаемое

"Не удалось найти профиль конфигурации (not_exist_profile)"

выводится на консоль и обработка останавливается.

Фактический

На консоль выводится следующее. «Не удалось найти профиль конфигурации (not_exist_profile)» не выводится.

Exception : System.Management.Automation.RemoteException
TargetObject : 
CategoryInfo : NotSpecified: (:String) [], RemoteException
FullyQualifiedErrorId : NativeCommandError
ErrorDetails : 
InvocationInfo : System.Management.Automation.InvocationInfo
ScriptStackTrace : <ScriptBlock>、C:\Users\xxx\Desktop\ErrorTest.ps1: 行 8
<ScriptBlock>、C:\Users\xxx\Desktop\無題10.ps1: 行 19
PipelineIterationInfo : {}
PSMessageDetails : 

Вопрос

Как мне заставить его вести себя как положено?

Я также публикую этот же вопрос на форуме разработчиков AWS.

...