none
Backup per PowerShell prüfen RRS feed

  • Frage

  • Hallo,

    ich möchte das tägliche Backup mit einem Script prüfen. Dazu habe ich folgende Anweisung erstellt:

    wevtutil qe Microsoft-Windows-Backup /f:text /q:"*[System/Eve
    ntID=14] and *[EventData/Data[@Name='HRESULT']='0']"

    Als Ergenis erhalte ich nun alle Einträge mit entsprechenden Kriterien. Nun möchte ich die Anweisung so eingrenzen, das nur die Einträge vom Vortag aufgelistet werden. Ich bekomme das leider nicht hin. Kann mir jemand helfen?

    Gruß

    Michael

    Samstag, 23. August 2014 15:49

Antworten

  • Hallo,

    eigentlich sollten diese beiden Zeilen genuegen um dir die 14'er Events der letzten 24 Stunden anzuzeigen.

    	$Date = (Get-Date).AddDays(-1)
    	Get-WinEvent -FilterHashtable @{LogName = 'Microsoft-Windows-Backup'; StartTime = $Date; ID = 14}

    Allerdings kaempft die Powershell hier immer noch mit einem Bug, dass je nach Culture Settings die Properties Message usw. leer bleiben.

       ProviderName: Microsoft-Windows-Backup
    
    TimeCreated                     Id LevelDisplayName Message
    -----------                     -- ---------------- -------
    23.08.2014 16:39:52             14



    Also muss man vor Ausfuehrung der obigen Zeilen die CurrentCulture auf en-US umbiegen, das ganze sieht dann so aus.

    function Show-BackupEvent {
    	$CurCulture = [System.Threading.Thread]::CurrentThread.CurrentCulture
    	[System.Globalization.CultureInfo]$NewCulture = 'en-US'
    	[System.Threading.Thread]::CurrentThread.CurrentCulture = $NewCulture
    	$Date = (Get-Date).AddDays(-1)
    	Get-WinEvent -FilterHashtable @{LogName = 'Microsoft-Windows-Backup'; StartTime = $Date; ID = 14}
    	[System.Threading.Thread]::CurrentThread.CurrentCulture = $CurCulture
    }
    Show-BackupEvent 

    und bringt das Ergebnis.
       ProviderName: Microsoft-Windows-Backup
    
    TimeCreated                     Id LevelDisplayName Message
    -----------                     -- ---------------- -------
    8/23/2014 4:39:52 PM            14 Information      The backup operation has 
    completed. 

    Beste Gruesse
    brima



    • Bearbeitet brima Samstag, 23. August 2014 19:53
    • Als Antwort markiert Michael Pleick Sonntag, 24. August 2014 18:07
    Samstag, 23. August 2014 19:45

Alle Antworten

  • Hallo,

    eigentlich sollten diese beiden Zeilen genuegen um dir die 14'er Events der letzten 24 Stunden anzuzeigen.

    	$Date = (Get-Date).AddDays(-1)
    	Get-WinEvent -FilterHashtable @{LogName = 'Microsoft-Windows-Backup'; StartTime = $Date; ID = 14}

    Allerdings kaempft die Powershell hier immer noch mit einem Bug, dass je nach Culture Settings die Properties Message usw. leer bleiben.

       ProviderName: Microsoft-Windows-Backup
    
    TimeCreated                     Id LevelDisplayName Message
    -----------                     -- ---------------- -------
    23.08.2014 16:39:52             14



    Also muss man vor Ausfuehrung der obigen Zeilen die CurrentCulture auf en-US umbiegen, das ganze sieht dann so aus.

    function Show-BackupEvent {
    	$CurCulture = [System.Threading.Thread]::CurrentThread.CurrentCulture
    	[System.Globalization.CultureInfo]$NewCulture = 'en-US'
    	[System.Threading.Thread]::CurrentThread.CurrentCulture = $NewCulture
    	$Date = (Get-Date).AddDays(-1)
    	Get-WinEvent -FilterHashtable @{LogName = 'Microsoft-Windows-Backup'; StartTime = $Date; ID = 14}
    	[System.Threading.Thread]::CurrentThread.CurrentCulture = $CurCulture
    }
    Show-BackupEvent 

    und bringt das Ergebnis.
       ProviderName: Microsoft-Windows-Backup
    
    TimeCreated                     Id LevelDisplayName Message
    -----------                     -- ---------------- -------
    8/23/2014 4:39:52 PM            14 Information      The backup operation has 
    completed. 

    Beste Gruesse
    brima



    • Bearbeitet brima Samstag, 23. August 2014 19:53
    • Als Antwort markiert Michael Pleick Sonntag, 24. August 2014 18:07
    Samstag, 23. August 2014 19:45
  • Hallo,

    erst einmal Danke für die Anregung. Ich habe es bei mir ohne die Umstellung der CurrentCulture umsetzen können. Wichtig war für mich der Filter über (get-date).AddDays. Die Filterung hat trotz deutsche Umgebung funktioniert. Das Problem kenne ich aus anderen Programmiersprachen allerding auch.

    Gruß und Danke

    Michael

    Sonntag, 24. August 2014 12:47