记录Powershell异常

时间:2013-12-03 13:50:38

标签: powershell logging

我有一个我正在运行的脚本,我想记录该脚本生成的所有异常。我希望每次运行能够生成一个日志文件。由于这是我正在创建的第一个日志文件,因此我没有任何先前版本可用作合理性检查...所以我想确保我的CODE尽可能正确。

我正在用

开始我的剧本
$error.Clear()                                          # flush PowerShell's error buffer
$systemRunDate    = Get-Date -format yyyyMdd"_"Hms      # get date as string
$errorLogFileName = "$($thedate)_Conversion_Test.log"   # generate logfile name

然后继续进行一系列功能...

function foo {
     do stuff
}

function foo2 {
     do stuff
}

function foo3 {
     do stuff
}

执行功能......

foo
foo1
foo2

以...结尾

write-output $error | format-list | out-file -Append "$errorLog"
Foreach($erritem in $error) {
write-output $erritem.ExceptionMessage | out-file -Append "$errorLog"
}

我的错误日志看起来非常渺茫,考虑到我以前在控制台中看到闪存,我想知道我是否有一些范围问题。我的想法是,通过声明文件名并将其写入各个函数的OUTSIDE,它将捕获每个错误。我还需要在每个函数内写错误吗?我猜不是,但是如果我说得对,我会喜欢第二双眼睛让我知道。

1 个答案:

答案 0 :(得分:0)

默认情况下,$error包含最后256个错误。该值在$MaximumErrorCount首选项变量中设置。不确定是否是这种情况但如果是这样你可以增加它(最多32768)。