私は、Windows タスク スケジューラを使用して毎晩実行する予定のデータベース ダンプを作成する PowerShell スクリプトを作成しました。ログ ファイルに出力することで、すべてが機能していることを確認できますが、ログを手動で確認しなくても、何か問題が発生したときに通知を受け取りたいと考えています。私のアイデアは、このスクリプトとその他のカスタム スクリプト用に Windows イベント ログを作成し、すべてのエラーをそこに記録することです。このログでエラーが発生したときに、電子メールを送信するなど、何らかの方法で通知を受け取りたいのですが、これを行う方法はありますか? Windows 7 を使用しています。
答え1
これを試してみてください。ログの保存場所やエラー コードなどを定義できます。独自のものにしてください。Gmail を使用してメッセージを送信する場合は、しばらく前に見たチュートリアルがあります。きっと見つかるはずです。
Try
{
Database dump commands
}
Catch
{
Write-EVentLog -LogName Application -Source "Baller Script" -EntryType Error -EventID 42 -Message "There has been a failure..."
Send-MailMessage -From [email protected] -To [email protected] -Subject "DBDump is broke as hell! (Event ID: 42)" -SmtpServer [email protected]
Break
}