Questa sezione contiene le note di rilascio versionate per le varie versioni del modulo PowerShell DNSServer.DebugLogParser.
Questa è la versione stampabile multipagina di questa sezione. Clicca qui per stampare.
Cronologia delle versioni del modulo
Note di rilascio versionate per il modulo PowerShell DNSServer.DebugLogParser
- Note di rilascio v1.2.1.0 (2026-01-26)
- Note di rilascio v1.2.0.0 (2026-01-25)
- Note di rilascio v1.1.0 (2026-01-23)
- v1.0.0 (2026-01-23)
Note di rilascio v1.2.1.0 (2026-01-26)
Modifiche
- Prestazioni: Migliorata l’elaborazione di record multilinea per evitare il caricamento di file di grandi dimensioni in memoria
- Previene errori di esaurimento memoria su file di log molto grandi
- Mantiene il pieno supporto per i blocchi di dettaglio PACKET e le righe di continuazione indentate
- L’uso della memoria è ora costante indipendentemente dalla dimensione del file
- Avanzamento: Aggiunto
Write-Progressper il feedback durante l’elaborazione- La barra di avanzamento si aggiorna ogni 1000 record per un impatto minimo sulle prestazioni
- Mostra il conteggio record corrente e il file in elaborazione
Note di rilascio v1.2.0.0 (2026-01-25)
Aggiunte
- NUOVO: Elaborazione di record multi-linea per i blocchi di dettaglio PACKET DNS
- Le voci di contesto PACKET possono ora includere informazioni dettagliate sulla connessione TCP/UDP e sulla struttura del messaggio DNS
- I blocchi di dettaglio vengono analizzati in formato JSON strutturato nella nuova colonna
Details - Include: informazioni sul socket, indirizzo/porta remota, dati temporali, struttura del messaggio (XID, Flags, QCOUNT, ecc.)
- Le sezioni DNS (QUESTION, ANSWER, AUTHORITY, ADDITIONAL) sono catturate con tutti i dettagli del record
- I nomi di dominio codificati nei blocchi di dettaglio vengono automaticamente convertiti in formato FQDN
- NUOVO: colonna
Detailsnell’output CSV- Contiene dati JSON strutturati per le voci PACKET con blocchi di dettaglio
- Vuota per le voci PACKET senza dettagli e per tutti i contesti non-PACKET
- Permette un’analisi approfondita dei pacchetti e indagini forensi su query/risposte DNS
- NUOVO: parametro switch
NoDetailsParsingper ottimizzazione delle prestazioni- Salta l’analisi JSON costosa dei blocchi di dettaglio PACKET
- Può migliorare la velocità di elaborazione del 30-50% per log con molti blocchi di dettaglio
- Da usare quando si elaborano file molto grandi (oltre 100MB) e non serve la struttura dettagliata dei pacchetti
- I blocchi di dettaglio vengono comunque raccolti nella colonna Information, ma la colonna Details resta vuota
- NUOVO: supporto per continuazione multi-linea anche per contesti non-PACKET
- EVENT, Note, DSPoll e altri contesti possono ora estendersi su più righe
- Le righe di continuazione indentate vengono automaticamente unite al campo Information del record principale
- Conserva messaggi di errore completi, aggiornamenti di zona e output diagnostici
- NUOVO:
ContextFilterriconosce tipi di contesto aggiuntivi:DSPoll,Init,Lookup,Recurse,Remote,Tombstone- Effetto:
Convert-DNSDebugLogFilepuò ora includere/escludere queste voci diagnostiche e di ciclo di vita tramite-ContextFilter
- Effetto:
- NUOVO: output delle statistiche ora include due file dedicati
_Statistic.csv: conteggi giornalieri dei record per tipo di contesto (Date, Context, Count, ComputerName)_PacketStatistic.csv: conteggi giornalieri PACKET per client/protocollo/direzione/tipo (Date, ClientIP, Protocol, Direction, QuestionType, Count, ComputerName)- Vantaggio: report più mirati (volume contesto operativo vs. suddivisione traffico DNS)
- Generazione JSON per i blocchi di dettaglio PACKET ottimizzata per prestazioni (analisi manuale invece di regex)
Modifiche
- BREAKING: l’output CSV ora include 18 colonne (aggiunta colonna
Detailsprima diComputerName)- Nuovo ordine colonne: DateTime, ThreadId, Context, PacketId, Protocol, Direction, ClientIP, Xid, Type, Opcode, FlagsHex, FlagsChar, ResponseCode, QuestionType, QuestionName, Information, Details, ComputerName
- Impatto: gli script che si basano sulle posizioni delle colonne devono essere aggiornati
- Vantaggio: capacità avanzate di analisi pacchetti senza modificare il comportamento della colonna Information esistente
- Elaborazione delle righe dati rifattorizzata per leggere tutte le righe in memoria e rilevare efficientemente record multi-linea
- Prestazioni: impatto minimo grazie all’uso ottimizzato di List
- Vantaggio: consente un lookahead accurato per blocchi di dettaglio e righe di continuazione
- Prestazioni: impatto minimo grazie all’uso ottimizzato di List
- I nomi delle query mancanti o codificati come vuoti ora vengono gestiti senza errori di parsing; l’output CSV conterrà un campo QuestionName vuoto se assente
Miglioramenti
- Parsing di
Convert-DNSDebugLogFilepiù robusto: validazione più rigorosa delle righe ed estrazione migliorata riducono righe spurie/invalide da log malformati mantenendo il formato CSV/statistiche - Rilevamento del contesto PACKET distingue tra query semplici e query con blocchi di dettaglio
- Le righe vuote dopo voci PACKET senza dettagli vengono saltate correttamente
- La decodifica dei nomi di dominio nei blocchi di dettaglio usa la funzione esistente
ConvertTo-Fqdnper coerenza
Prestazioni
- Velocità di elaborazione mantenuta per log senza blocchi di dettaglio
- Lo switch
NoDetailsParsingoffre un miglioramento di velocità del 30-50% quando non serve il parsing JSON - Gestione efficiente dello stato durante l’elaborazione dei record multi-linea
- Operazioni su stringhe ottimizzate (TrimStart, Join) invece di regex per la gestione delle righe di continuazione
Note
- Queste modifiche sono progettate per essere retrocompatibili per un uso normale. Se ti basi su un set esatto di nomi di contesto o su un comportamento di parsing precedentemente rigoroso, verifica gli script a valle
- La nuova colonna
Detailsè sempre presente nell’output CSV; usaNoDetailsParsingper mantenerla vuota per prestazioni - Gli script esistenti che analizzano il CSV per posizione colonna devono considerare la nuova colonna
Details(posizione 17, prima di ComputerName)
Note di rilascio v1.1.0 (2026-01-23)
Aggiunto
- NUOVO: Parametro ContextFilter per l’analisi selettiva dei log
- Filtra le voci di log per tipo di contesto: PACKET (query/risposte DNS), EVENT (eventi del server) o Note (informazioni diagnostiche)
- Permette un’analisi mirata su specifici tipi di voci di log
- Predefinito: All (include tutti i tipi di contesto)
- Casi d’uso: Concentrarsi solo sul traffico DNS, monitorare eventi del server, risolvere problemi diagnostici
- NUOVO: Campo Informazioni nell’output CSV
- Registra informazioni dettagliate per le voci di contesto EVENT e Note
- Esempi: “Il server DNS è stato avviato.”, “Caricamento della zona completato”, errori di socket, messaggi di stato interni
- Migliora la visibilità sugli eventi operativi e diagnostici del server DNS
- Il campo è popolato quando il contesto è EVENT o Note; vuoto per le voci PACKET
Modificato
- BREAKING: La colonna ComputerName è ora sempre inclusa alla fine di tutti i record di output
- In precedenza: ComputerName veniva inclusa condizionatamente all’inizio quando il parametro era specificato
- Ora: ComputerName è sempre presente come ultima colonna; vuota se il parametro non è specificato
- Vantaggio: Struttura di output coerente semplifica la consolidazione di log da più server e l’elaborazione automatizzata
- Impatto: Gli script esistenti che analizzano la posizione delle colonne o si aspettano la presenza condizionata della colonna devono essere aggiornati
Aggiunto
- Filtraggio del contesto per concentrarsi su specifici tipi di voci di log (PACKET, EVENT, NOTE) tramite il parametro ContextFilter
Migliorato
- Rifattorizzata l’help basata su commenti per Convert-DNSDebugLogFile per maggiore chiarezza e sintesi
- Aggiornate le descrizioni dei parametri per essere più informative e pratiche
- Migliorata la documentazione degli esempi con casi d’uso più mirati e pratici
- Aggiornato il file di help about_DNSServer.DebugLogParser per riflettere le funzionalità attuali
- Potenziato il logging verbose per fornire informazioni di progresso più dettagliate durante l’elaborazione
v1.0.0 (2026-01-23)
Aggiunto
- Rilascio iniziale
Convert-DNSDebugLogFile- Parser ad alte prestazioni per i file di log di debug del server DNS di Windows- Analizza tutti i 15 campi standard dai log di debug DNS in formato CSV strutturato
- Supporta delimitatori CSV personalizzabili (predefinito: punto e virgola)
- Colonna ComputerName opzionale per la consolidazione dei log da più server
- Tre modalità di output: solo dati CSV, solo statistiche o entrambi
- Riepiloghi statistici che aggregano l’attività per IP client, protocollo e tipo di query
- Supporto pipeline per l’elaborazione batch di più file di log
- Validazione dell’intestazione per garantire l’integrità dei dati (può essere bypassata se necessario)
- Compressione automatica opzionale dei file di output (formato ZIP)
- Rimozione opzionale dei file sorgente dopo l’elaborazione riuscita
- Parsing e formattazione delle date sensibili alla cultura per server DNS internazionali
- Ottimizzato per file di grandi dimensioni (oltre 100MB) utilizzando I/O in streaming e operazioni stringa efficienti
- Compatibile con PowerShell 5.1+ (edizioni Desktop e Core)
- Supporta i formati di log di Windows Server 2016+ e DNS Server 2012 R2 fino al 2025