Uścisk dłoni wykonawcy z zleceniodawcą, zwiastujący udaną współpracę.

Raportowanie wykonania kopii zapasowych (DPM + PowerShell)

Reklama
Miejsce na reklamę

Raportowanie wykonania kopii zapasowych (DPM + PowerShell)

author box img

Marcin Giziński

Zaktualizowano: 31 lipca 2013 31.07.2013 Czas lektury: 2min
  • Więcej poradników o biezpieczeństwie systemów

Ponad 3220 Specjalistów od Bezpieczeństwa Systemów blisko Ciebie

Do jednych z codziennych obowiązków administracyjnych należy analizowanie statusów przeprowadzania nocnych kopii zapasowych. Dla dziewięćdziesięciu procent ogółu społeczeństwa pierwszą czynnością wykonywaną tuż po uruchomieniu komputera w pracy jest uruchomienie klienta pocztowego i sprawdzenie poczty. Dla ułatwienia oraz uniknięcia błędu ludzkiego (zapomnienia o sprawdzeniu), warto zautomatyzować tą czynność. Raport wówczas przyjdzie rano pocztą elektroniczną, przed rozpoczęciem pracy.
W artykule tym opisano przykład wysyłania raportów wiadomością e-mail z wykorzystaniem System.Net.Mail (http://msdn.microsoft.com/pl-pl/library/system.net.mail.aspx ) i oprogramowania do wykonywania kopii bezpieczeństwa System Center - Data Protection Manager 2012 (http://www.microsoft.com/pl-pl/server-cloud/system-center/data-protection-manager.aspx )
Zawartość skryptu generującego plik z raportem oraz wysyłka wiadomości e-mail:
#Importowanie modułu MS DPM 2012
Import-Module DataProtectionManager
function GenerujRaport()
{
#Zawartość nagłówka html ze stylem CSS, żeby raport się ładniej prezentował:)
$htmlhead=@'

'@
#Generowanie pliku z raportem
$Data = Get-ProtectionGroup -DpmServerName NazwaSerwera | foreach {Get-DPMJob $_ -Newest| Select-Object StartTime,EndTime,Status,ProtectionGroupName,DataSources}
$Data | ConvertTo-Html -head $htmlhead | Out-File C:\DPM_Reports\DPM_$(get-date -format d).html
}
function WyslijEmail()
{
#Nadawca wiadomosci
$Nadawca = "notify@firma.com"
#Odbiorca wiadomosci
$Odbiorca = "twoj@adres.com"
#Adres serwera smtp
$Serwer = "serwer.firma.com"
#Temat wiadomości
$Temat = $env:computername+": DPM Backup – Raport z dnia "+(Get-Date -Format d)
#Zawartość wiadomości z pliku wygenerowanego wczesniej
$Zawartosc = (Get-Content C:\DPM_Reports\DPM_$(Get-Date -format d).Html)
#Dane do konta do wysyłki, ustawienia portów serwera, ssl itp.
$SMTPclient = new-object System.Net.Mail.SmtpClient $Serwer
$SMTPClient.port = 587
$SMTPclient.EnableSsl = $true
$SMTPAuthUsername = "nazwa_uzytkownika"
$SMTPAuthPassword = "haslo"
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($SMTPAuthUsername, $SMTPAuthPassword)
$Wiadomosc = new-object System.Net.Mail.MailMessage $Nadawca, $Odbiorca, $Temat, $Zawartosc
$Wiadomosc.IsBodyHtml = $true;
$SMTPclient.Send($Wiadomosc)
}
#Wywołanie funkcji GenerujRaport
GenerujRaport
#Wywołanie funkcji WyslijEmail
WyslijEmail
Uruchamianie skryptu:
1. Do uruchamiania skryptów powershell z plików należy zmienić ExecutionPolicy poleceniem:
Set-ExecutionPolicy –unrestricted
(http://technet.microsoft.com/pl-PL/library/dd347628.aspx)
Dodano: 6 sierpnia 2013 Zaktualizowano: 31 lipca 2013

Jak oceniasz ten poradnik?

Dziękujemy za Twoją opinię!

Twoja opinia pozwala nam tworzyć lepsze treści

Co moglibyśmy poprawić lub dodać?
Reklama
Miejsce na reklamę
Jak działa Oferteo?
Odpowiedz na kilka pytań

Powiedz nam czego potrzebujesz, abyśmy dostarczyli Ci właściwe oferty

Otrzymaj oferty

Poznaj dopasowane oferty specjalistów z Twojej okolicy

Wybierz najlepszą

Porównaj oferty i zadawaj pytania, bezpłatnie i niezobowiązująco