web-dev-qa-db-ja.com

失敗時のWbadminメールアラート

電子メールアラートを送信するためにWBADMINで使用するスクリプトを持っている人はいますか?私はスクリプトの初心者であり、失敗したバックアップについて通知するための解決策を見つけるのに苦労しています。持っていると便利なツールになるようです。

Server 2008 R2 Foundationを実行していて、NASにバックアップしています。タスクスケジューラでwbadminを使用して、毎日のバックアップを実行しています。

[〜#〜] update [〜#〜]サードパーティのソリューションの予算がないため、簡単なスクリプトでソリューションを実行しようとしています。

2
Greg

すでに失敗したバックアップがある場合は、バックアップ|操作イベントログで失敗したバックアップを見つけ、失敗したイベントを右クリックし、[このイベントにタスクを添付]を選択して、タスクに入力するだけで簡単に実行できます。適切に設定します。

その後、バックアップが失敗してイベントがログに記録されるたびに、タスク構成に基づいて電子メールが送信されます。

2
joeqwerty

Server 2012では、バックアップツールは各バックアップタスクの後に2つのログファイルを書き込みます。 enter image description here

  • 成功すると、Backup_Error- <date> .logが作成されますが、空です。
  • 失敗した場合、Backup_Error- <date> .logにデータが入力されると思います。

    タスクスケジューラを使用して、バッチファイルを実行して次のことを実現します。

    1. C:\ Windows\Logs\WindowsServerBackupディレクトリにある空の.logファイルを削除します
    2. (残りの)Backup_Error * .logを検索します(空ではないため)
    3. Blat を使用してそのコンテンツを私にメールで送信します
@echo off
:: This script has been written to monitor WBAdmin backups on Server 2012
::
:: Tested on: Microsoft Windows Server 2012 Standard (6.2.9200 N/A Build 9200) 
:: Date:      September 4, 2015
:: Author Florian Bidabe @Enelass (https://au.linkedin.com/in/bidabe)

::Variables
set MailServer=
set Sender=
set Recipient=


:: Delete Empty files
cd C:\Windows\Logs\WindowsServerBackup
for %%F in (*) do if %%~zF equ 2 del "%%F"

:: Look for Backup_Error file(s)
dir C:\Windows\Logs\WindowsServerBackup\Backup_Error*.log  > nul 2> nul
if %ERRORLEVEL% EQU 0 goto :AdminAlert
echo No Error Logs available ! Backup suceeded !
ping 0.0.0.0 -n 5 > nul 2> nul
exit 0

:AdminAlert
:: Test if blat can be found (SMTP Server)
where blat > nul 2> nul
if not %ERRORLEVEL% EQU 0 (
 echo Blat cannot be found... Copy blat.exe in system32!
 ping 0.0.0.0 -n 5 > nul 2> nul
 exit 1)

:: Select most recent error log
FOR %%F IN (C:\Windows\Logs\WindowsServerBackup\Backup_Error*.log) DO (
 set filename=%%F
 goto :Send
)

:Send
blat -SaveSettings -f %Sender% -server %MailServer%
blat -body "Hello Administrator, Please consult the attached log" -attach %filename% -s "%computername% - Windows Server Backup has failed !" -to %Recipient%
exit 0
1
Florian Bidabe

blat を使用できます。これは、指定したSMTPサーバーと資格情報を使用して電子メールを送信するコマンドラインツールです。 blatを使用するようにスクリプトを設定し、wbadminバックアップの失敗についてメールを送信しました。

これは、スクリプトを作成するための非常に便利なツールです。私はこれを多くのスクリプトで常に使用して、注意が必要な可能性のあるステータスを警告しています。

0
user208007