Skip to content

Daniels Tagesmeldungen

Kleine IT-Episoden, der Diabetes & das wahre Leben

  • Startseite
  • About me…
    • Lebenslauf
    • Weiterbildung
  • Diabetes melitus
    • Diabetes melitus – Definition/Typen
    • Diabetes melitus – Podcasts
    • Diabetes Typ-2 – Erläuterung
    • Medikament – Forxiga (Dapagliflozin)
    • Medikament – Eylea (Aflibercept)
    • Medikament – Lucentis (Ranibizumab )
    • Medikament – Metformin
  • Disclaimer
  • Toggle search form

Powershell: Ausdrucke pro Drucker ermitteln

Posted on 6. Dezember 20186. Dezember 2018 By Daniel Lensing Keine Kommentare zu Powershell: Ausdrucke pro Drucker ermitteln

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.

Powershell, Windows Server

Beitrags-Navigation

Previous Post: Powershell: Persönliches Laufwerk bei AD-Benutzern setzen
Next Post: PowerShell: DHCP-Leases exportieren

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Daniel Lensing

Ich betreibe diesen Blog, bei dem ich meine Erfahrungen aus der IT & dem Berufsalltag sowie dem Wahnsinn des Lebens mit Höhen und Tiefen. Darunter meine „Erlebnisreise“ zum Planeten „Diabetes mellitus Typ-2“.

Translate:

Follow us

Kategorien

  • Client (229)
    • Android (7)
    • Fedora (Linux) (5)
    • iOS (5)
    • Mac OS X (5)
    • Peripherie (5)
    • Ubuntu (Linux) (8)
    • Windows 10 (54)
    • Windows 11 (15)
    • Windows 7 (100)
    • Windows 8 (36)
    • Windows 8.1 (28)
    • Windows Mobile (2)
    • Windows Vista (65)
    • Windows XP (21)
  • Cloud (15)
    • Amazon AWS (1)
    • Microsoft Azure (7)
    • Office 365 (9)
  • Fortbewegung (54)
    • Auto (17)
    • Bahn (17)
    • Beinarbeit (5)
    • Flugzeug (2)
    • Zweirad (14)
  • IT-Nachrichten (37)
  • Leben Beruf und Gesundheit (189)
    • #t2dhero (46)
    • Arbeitszimmer (26)
    • Audio (19)
    • Film / Kino (7)
    • Gedanken (74)
    • Gesundheit (29)
    • Internet (4)
    • Lebensmittel & Essen (21)
    • Lesestoff (18)
    • Sport (10)
    • Veranstaltung (3)
  • Lehren & Lernen (48)
    • Forschung (1)
    • Konferenzen (3)
    • Präsentation (3)
    • Zertifizierung (42)
  • Programme (318)
    • Android-Apps (27)
    • Eigene Tools (11)
    • iOS-Apps (6)
    • Office (85)
    • Patchday+Updates (71)
    • Software (145)
    • Spiele (3)
    • Windows Phone-Apps (2)
  • Programmierung (86)
    • AutoIT (1)
    • KiXtart (1)
    • PHP (3)
    • Power Automate (1)
    • Powershell (55)
    • VB.NET (8)
    • VBA (10)
    • VBS (10)
  • Server (154)
    • Citrix XenServer (2)
    • Exchange Server (26)
    • Lync Server (1)
    • System Center (4)
    • Ubuntu Server (2)
    • Windows Home Server (2)
    • Windows Server (91)
    • Windows Server 2012 (45)
    • Windows Server 2016 (15)
    • Windows Server 2019 (13)
    • Windows Server 2022 (10)
    • Windows Server 2025 (3)
  • Telekommunikation (37)
    • Festnetz (3)
    • Internet (12)
    • Mobilfunk (23)
  • Verkauf & Verlosung (1)
  • Web-Installationen (35)
    • Joomla (4)
    • Mastodon (1)
    • MediaWiki (9)
    • phpMyAdmin (2)
    • Piwik (4)
    • Wordpress (20)
Mastodon

Copyright © 2025 Daniels Tagesmeldungen.

Powered by PressBook WordPress theme