Catching error in Text file


I’ve built my script and it is working correctly for updating and changing the URL as I require. The second part is if an error is thrown out I want the URL, Date/time and the error to be put in to a text file.

At the moment it is recording the URL and Date/time for everything and if an error it is capturing date/time, URL and the Error.

Because the script is running a lot of times I just want it to return a result to the notepad file on occasions where there is an error. What is it I’m doing wrong?

function New-SPsiteURL{
    [String]$logFile = 'c:\Powershell Exports\Url to title errors.txt'

foreach ($line in (import-csv "C:\Powershell Exports\Newsitelist.csv")) {
        get-spweb -identity $line.url -ea silentlycontinue -ev myerr | set-spweb -relativeurl $line.title   
# }
        Get-date | Out-file $logfile -append
        $line.url | Out-File $LogFile -append
        $myerr | Out-File $logfile -append                  
 #               }


Try{}Catch{} only catches terminating errors.

-ea silentlycontinue will make all errors non-terminating and there by not cought, change this to -ErrorAction Stop to make the errors terminating.

Also take a look at this nice function. I’m using it in my scripts:

Function - Write-Log

Perfect, Thanks for the info. Great help.