【问题标题】:Logging Powershell Exceptions记录 Powershell 异常
【发布时间】:2013-12-03 13:50:37
【问题描述】:

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

我开始我的脚本

$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"
}

考虑到我习惯于在控制台中看到闪现的内容,我的错误日志似乎非常少,我想知道我是否有一些范围问题。我的想法是,通过声明文件名并将其写入各个函数之外,它会捕获每个错误。我是否还需要在每个单独的函数中写入错误?我猜不是,但我希望有第二双眼睛让我知道我是否做对了。

【问题讨论】:

    标签: powershell logging


    【解决方案1】:

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

    【讨论】:

    • 啊哈。不知道发生了什么事。谢谢你的提示;我将通过重置首选项再次尝试运行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-01
    • 1970-01-01
    • 2022-11-02
    • 2021-04-29
    • 2014-02-28
    • 2015-10-19
    • 2014-02-20
    相关资源
    最近更新 更多