Wpływ: Skrypty opierające się na pozycjach kolumn muszą zostać zaktualizowane
Korzyść: Zaawansowane możliwości analizy pakietów bez zmiany dotychczasowego zachowania kolumny Information
Przetwarzanie linii danych zostało zrefaktoryzowane do wczytywania wszystkich linii do pamięci dla efektywnego wykrywania wieloliniowych rekordów
Wydajność: Minimalny wpływ dzięki zoptymalizowanemu użyciu List
Korzyść: Umożliwia dokładne przewidywanie bloków szczegółów i linii kontynuacji
Nazwy zapytań, które są brakujące lub zakodowane jako puste, są teraz obsługiwane łagodnie (bez błędów parsowania); wyjście CSV będzie zawierać pustą wartość QuestionName, gdy brak
Ulepszenia
Parsowanie Convert-DNSDebugLogFile jest bardziej odporne: surowsza walidacja linii i lepsze wyodrębnianie zmniejszają fałszywe/nieprawidłowe wiersze z uszkodzonych logów, zachowując format wyjścia CSV/statystyk
Wykrywanie kontekstu PACKET rozróżnia proste zapytania i zapytania z blokami szczegółów
Puste linie po wpisach PACKET bez szczegółów są prawidłowo pomijane
Dekodowanie nazw domen w blokach szczegółów korzysta z istniejącej funkcji ConvertTo-Fqdn dla spójności
Wydajność
Utrzymano szybkość przetwarzania dla logów bez bloków szczegółów
Przełącznik NoDetailsParsing zapewnia 30-50% poprawę szybkości, gdy parsowanie JSON nie jest potrzebne
Efektywne zarządzanie stanem podczas przetwarzania wieloliniowych rekordów
Zoptymalizowane operacje na łańcuchach (TrimStart, Join) zamiast regex do obsługi linii kontynuacji
Uwagi
Te zmiany są zaprojektowane tak, aby były kompatybilne wstecz dla normalnego użytkowania. Jeśli polegasz na dokładnym zestawie nazw kontekstów lub wcześniej ścisłym parsowaniu, prosimy o weryfikację skryptów downstream
Nowa kolumna Details jest zawsze obecna w wyjściu CSV; użyj NoDetailsParsing, aby pozostawić ją pustą dla wydajności
Istniejące skrypty parsujące CSV według pozycji kolumn muszą uwzględnić nową kolumnę Details (pozycja 17, przed ComputerName)