Vor einer Umstellung oder auch einer Abschaltung eines Druckservers kann ein Audit der Druckdaten sinnvoll sein. Dabei wird ermittelt das Skript in den Parametern eines Zeitfensters, welcher Drucker wieviel DruckauftrÀge verarbeitet hat.
$Startzeit = "24.11.2018 00:00:00" $Endzeit = "24.11.2018 23:59:59" $ZentralDatei ="E:\Audit\Zentraldatei.csv" $Auswertung ="E:\Audit\Auswertung.csv" $Druckerliste = @() $Resultate = Get-WinEvent -FilterHashTable @{LogName="Microsoft-Windows-PrintService/Operational"; ID=307; StartTime=$Startzeit; EndTime=$Endzeit;} ForEach($Resultat in $Resultate){ $Datensatz = [xml]$Resultat.ToXml() $DatenDetails = New-Object -TypeName psobject -Property @{ Druckername = $Datensatz.Event.UserData.DocumentPrinted.Param5 Zeitstempel = $Resultat.TimeCreated } $Druckerliste += $DatenDetails } $Druckerliste | Export-Csv -LiteralPath $ZentralDatei -NoTypeInformation Import-Csv $ZentralDatei | Group-Object Druckername | Select-Object Name, Count | Sort-Object -Property name | Export-csv $Auswertung -NoTypeInformation
Das eingesetzte CMDlet „Get-WinEvent“ steht seit Windows Server 2008 R2 und spĂ€teren Betriebssystemen zur VerfĂŒgung.
Um die Daten zu erhalten, muss allerdings in der Ereignisanzeige das Log fĂŒr „Microsoft \ Windows \ Printservices \ Operational“ aktiviert worden sein. Dieses sollte auch vorzeitig durchgefĂŒhrt worden sein, um lĂ€ngere ZeitrĂ€ume zu ĂŒberwachen. Die Daten können nicht rĂŒckwirkend erstellt werden. Anbei die schnelle Umsetzung per PowerShell-Aufruf:
$EventLogging = Get-WinEvent -ListLog 'Microsoft-Windows-PrintService/Operational' $EventLogging.IsEnabled = $true $EventLogging.MaximumSizeInBytes = 1000000 $Eventlogging.LogMode = "Circular" $EventLogging.SaveChanges()
Mit diesem Befehlssatz wird das erforderliche Eintrag in der Ereignisanzeige aktiviert. Dabei wird ein 1 GigaByte groĂes Log erstellt. Wenn der Schwellwert erreicht ist, wird beim HinzufĂŒgen eines neuen Ereignisses das Ălteste entfernt.
In der Datei „Auswertung.csv“ stehen dann die Druckernamen sowie die Anzahl der Ausdrucke im Zeitraum ausgedruckt wurden.