# SOP: Export von Druckprotokollen in MySQL (drucklog_export_v.0.1.ps1) ## 1. Zweck des Skripts Dieses PowerShell-Skript dient der zentralen Erfassung von Druckvorgängen auf Windows-Servern oder Workstations. Es liest das Ereignisprotokoll `Microsoft-Windows-PrintService/Operational` (Event ID 307) aus und überträgt die Details (Benutzer, Dokumentname, Seitenanzahl, Drucker) in eine MySQL-Datenbank (`drucklog`). **Nutzen:** Ermöglicht die langfristige Analyse des Druckaufkommens und die Erstellung von Reports für die IT-Administration. ## 2. Voraussetzungen & Installation Damit das Skript ordnungsgemäß ausgeführt werden kann, müssen folgende Voraussetzungen erfüllt sein: * **MySQL Connector NET:** Das Skript erwartet die `MySql.Data.dll` im Pfad: `C:\Program Files (x86)\MySQL\MySQL Connector NET 9.4\MySql.Data.dll` * **PrintService Log:** Das "Operational"-Protokoll im Windows Event Viewer muss **aktiviert** sein. * **MySQL Datenbank:** Eine Datenbank namens `drucklog` mit der entsprechenden Tabellenstruktur muss auf dem Host `10.102.1.65` vorhanden sein. ## 3. Zentrale Konfiguration (Skript-Header) Die Verbindungsparameter sind im Skript wie folgt definiert: * **MySQL-Host:** `10.102.1.65` * **Datenbank-Benutzer:** `svc.druckerlog` * **Datenbank-Passwort:** (Im Skript hinterlegt) * **Ziel-Datenbank:** `drucklog` * **Log-Pfad:** `C:\Tools\drucklog_task.log` (Überprüfung der Skriptausführung) ## 4. Ausführung & Automatisierung Das Skript kann manuell oder über die **Windows Aufgabenplanung (Task Scheduler)** ausgeführt werden. ### Manueller Test (PowerShell): ```powershell # In das Verzeichnis wechseln und ausführen .\drucklog_export_v.0.1.ps1 ``` ### Empfohlene Automatisierung (Task Scheduler): * **Trigger:** Täglich, Wiederholung alle 1 Stunde. * **Aktion:** `powershell.exe` * **Argumente:** `-ExecutionPolicy Bypass -File "C:\Scripts\drucklog_export_v.0.1.ps1"` ## 5. Monitoring & Protokollierung Das Skript schreibt bei jedem Durchlauf einen Zeitstempel in die lokale Datei: `C:\Tools\drucklog_task.log` Bei Fehlern in der Datenbankverbindung prüfen Sie bitte, ob der MySQL-Host `10.102.1.65` vom lokalen System aus erreichbar ist (Port 3306). ## 6. Sicherheitshinweis **Achtung:** Das Skript enthält Datenbank-Zugangsdaten im Klartext. Stellen Sie sicher, dass die NTFS-Berechtigungen auf dem Windows-Server so gesetzt sind, dass nur das IT-Team Zugriff auf das Skriptverzeichnis hat. --- *Erstellt für die IT-Dokumentation - Projekt: IT Internal Repository*