Это, вероятно, из-за слишком большого количества оболочек.Плюс SSIS сама по себе довольно глючная.В качестве возможного обходного пути вы можете попытаться перенаправить поток ошибок на стандартный вывод, возможно, он появится в StandardOutputVariable.Изнутри powershell добавьте *> & 1, хотя вам может понадобиться сначала обернуть ваш скрипт как блок скриптов:
&{
#some script
Write-Output "Hello"
Write-Error "Error occured"
} *>&1 # * will move all streams to stdout
Если вы назовете скрипт из batch / cmd, добавьте 2> & 1 в конце (* не будетработа в cmd, 2 - поток ошибок)
> powershell .\yourscript.ps1 2>&1
Кроме того, вы можете сделать что-то похожее, обернув ваш скрипт с помощью try / catch и напечатав ошибку в catch с помощью Write-Host.Если вам действительно нужно хранить ошибки отдельно, а другого решения нет, возможно, перенаправьте их в файл и затем прочитайте оттуда (добавив 2> error.log)