Integration mit Analysetools
For AI agents: a documentation index is available at /llms.txt; a markdown version of this page is available at /de/docs/05-integration/index.md.
Der Sinn der Konvertierung eines DNS-Debug-Logs liegt im, was danach passiert. CSV wurde gewählt, weil es von allem gelesen wird – aber „alles liest CSV“ verbirgt zwei Einstellungen, die entscheiden, ob der Import schmerzfrei oder ein Nachmittag voller Fummelei wird.
Zwei Einstellungen, die alles entscheiden
Trennzeichen. Standard ist ;. Behalte es für Excel in Regionen, die das Komma als Dezimaltrennzeichen verwenden. Wechsle zu , für die meisten Datenbanken und Data-Science-Tools. Was auch immer du wählst, sag der importierenden Seite dasselbe.
Datumsformat. -OutputCulture steuert, wie Zeitstempel geschrieben werden. Für alles, was von einer Maschine gelesen wird, nutze sv-SE (oder die Invariant Culture), damit DateTime als 2026-01-20 23:00:16 ausgegeben wird:
Convert-DNSDebugLogFile -InputFile "C:\Logs\dns.log" -OutputCulture 'sv-SE'
Jeder unten genannte Verbraucher versteht dieses Format ohne Hinweis. Länderspezifische Ausgaben wie 20.01.2026 werden als Text importiert oder – noch schlimmer – als Monat/Tag falsch interpretiert.
Microsoft Excel
Der schnellste Weg, sich eine einzelne konvertierte Logdatei anzusehen.
- Mit dem Standard-Trennzeichen
;und einer passenden Regionseinstellung öffnet ein Doppelklick die Datei mit korrekten Spalten. - Wenn alles in Spalte A landet, passt das Trennzeichen nicht zu deiner Excel-Einstellung. Entweder erneut mit
-Delimiter ","ausführen oder über Daten → Aus Text/CSV importieren und dort das Trennzeichen auswählen. - Mach aus dem Bereich eine Tabelle (
Strg+T) und erstelle eine Pivot-Tabelle mitClientIP,QuestionNameoderQuestionType. Top-Talker und Top-Domains sind in etwa einer Minute fertig. - Bei mehr als ein paar hunderttausend Zeilen nutze stattdessen Power Query oder eine der anderen unten genannten Optionen.
Die Dateien *_Statistic.csv und *_PacketStatistic.csv sind meist die besseren Excel-Ziele – sie sind voraggregiert und bleiben klein. Siehe Ausgabeformate.
Power BI
Importiere die CSV-Dateien und erstelle Dashboards für DNS-Aktivität, Top-Clients, Abfrage-Trends und Fehlerraten.
- Richte Power Query auf den Ordner mit deinen konvertierten Dateien ein, nicht auf eine einzelne Datei. Das Layout ist über Server und Tage hinweg identisch, Dateien werden einfach angehängt.
- Die Spalte
ComputerNameermöglicht Multi-Server-Berichte – setze-ComputerNamewährend der Konvertierung, sonst kannst du nicht nach Server filtern. ResponseCodeundQuestionTypesind natürliche Filter;DateTimewird zur Zeitachse.- Wenn du nur tägliche Trends brauchst, füttere Power BI mit
*_PacketStatistic.csvstatt der kompletten Datei, um das Modell klein zu halten.
SQL-Datenbanken
Lade die CSV per Bulk-Load in SQL Server, PostgreSQL oder andere SQL-Datenbanken für langfristige Speicherung und wiederholbare Abfragen.
Eine einsatzbereite Schritt-für-Schritt-Anleitung – Tabellen-Definition, Konvertierung, SqlBulkCopy-Import und eine Erkennungsabfrage für verdächtige TXT-Aktivität – findest du unter Security Analysis Workflow with SQL Server.
Punkte, die du vor dem ersten Laden planen solltest:
- Nutze
-OutputCulture 'sv-SE', damit Zeitstempel ohne Umwandlungstricks in einedatetime2-Spalte landen. InformationundDetailskönnen lang sein; gib ihnennvarchar(max).- Indexiere, was du tatsächlich abfragst – typischerweise
DateTime,ClientIPundQuestionName. - Halte
-ComputerNamegefüllt, damit Zeilen nach dem Zusammenführen noch zugeordnet werden können.
SIEM-Systeme
Splunk, Elastic, Sentinel und ähnliche Plattformen nehmen die CSV auf, um sie mit anderer Sicherheitstelemetrie zu korrelieren und Alarme zu generieren.
- Versende die komprimierte Ausgabe (
-CompressOutput) – sie ist etwa ein Zehntel der Größe und die meisten Collector entpacken sie selbst. - Definiere die Feldzuordnung einmal; das Spaltenlayout ändert sich nie zwischen Läufen oder Servern, inklusive der immer vorhandenen abschließenden Spalte
ComputerName. - Lass deinen Collector Duplikate entfernen oder archiviere verarbeitete
.log-Dateien. Ein Konvertierungsjob, der dieselben rotierten Logs erneut verarbeitet, sendet sonst identische Zeilen erneut. -ContextFilter Packethält das Ingest-Volumen (und die Lizenzkosten) niedrig, wenn Server-Notizen nicht zu deinen Anwendungsfällen gehören.
Python, R und Data-Science-Tools
Die strukturierte Ausgabe ist bereit für Anomalieerkennung, Baseline-Analysen und individuelle Auswertungen.
import pandas as pd
df = pd.read_csv(
r"C:\Administration\Logs\DNSServer\dns.csv",
sep=";",
parse_dates=["DateTime"],
)
# Top 20 abgefragte Namen, nur Anfragen
top = (
df[df["Direction"] == "Rcv"]
.groupby("QuestionName")
.size()
.sort_values(ascending=False)
.head(20)
)
print(top)
parse_dates funktioniert direkt, wenn du mit -OutputCulture 'sv-SE' exportiert hast. Ab hier übernehmen pandas, scikit-learn oder R das Clustering, die Saisonalität und Ausreißererkennung wie gewohnt.
In PowerShell bleiben
Du musst PowerShell nicht verlassen, um schnell eine Antwort zu bekommen:
$dns = Import-Csv "C:\Administration\Logs\DNSServer\dns.csv" -Delimiter ';'
# lauteste Clients
$dns | Where-Object Direction -eq 'Rcv' |
Group-Object ClientIP |
Sort-Object Count -Descending |
Select-Object -First 10 Count, Name
# fehlgeschlagene Abfragen
$dns | Where-Object ResponseCode -eq 'NXDOMAIN' |
Group-Object QuestionName |
Sort-Object Count -Descending |
Select-Object -First 10 Count, Name
Import-Csv liest die ganze Datei in den Speicher, das ist also okay für ein rotiertes Chunk, aber ungeeignet für einen mehrgigabytegroßen Export – dafür sind die Datenbank- und SIEM-Wege gedacht.