0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

バッチエラーログ出力の一案

img20201214.gif

無題1.ps1
#エラー情報の初期化
$Error.Clear()

try
{ 
    #キャッチできるエラー(※すでにExcelで開いているので書込めない)
    $filePath = ".\testA.csv "
    $Message = "あいうえお"
    Set-Content -Path $filePath -Value $Message
}catch{
    #エラー追記
    $Error.Add("$($filePath)に「$($Message)」を書込むことができませんでした。")
}

try
{
    #キャッチできないエラー(※ファイルがないのでエラー)
    Get-Content .\testB.csv
}catch{
    $Error.Add("ここには来ない…")
}

#エラー情報がある場合
if($Error -ne "")
{
    #ログフィルパス
    $ErrLogPath = ".\ErrorLog.txt"

    #重複削除
    $ErrInfo = $Error | Sort-Object -Unique
    #エラーログ書込み
    Set-Content -Path $ErrLogPath -Value $ErrInfo

    #StackTraceもほしければ
    #エラーログ追記
    Add-Content -Path $ErrLogPath -Value $StackTrace
}

こんな感じでエラーログを出力してます!:laughing:

Follow @miki1220jp
↑よろしくお願いします:bow:ぜひぜひ

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
0
Help us understand the problem. What are the problem?