Author Posts

November 5, 2014 at 8:18 am

Hi

Have a function which I call during my script and use to write output to the screen, I would also like to out put the same information to a log file.

I have tried to pipe the output to a file using out-file but I dont see the log file created nor an error. I see the output on screen but not a log file

Function Logit(){
$TextBlock1 = $args[0]
$TextBlock2 = $args[1]
$TextBlock3 = $args[2]
$Stamp = Get-Date
Write-Output "[$Stamp] [$Section – $TextBlock1]" | Out-file -Append -FilePath 'C:\Script\Log.txt'
}

November 5, 2014 at 8:22 am

You can use the Start-Transcript command for this, but it has some limitations that are being addressed in PowerShell v5 (only works in the powershell.exe host, only one transcript can be active at a time.) To get around these limitations, I wrote the PowerShellLogging module, which you can download from https://gallery.technet.microsoft.com/Enhanced-Script-Logging-27615f85 .