Zadanie tygodnia: Analizator logów

  • Zadanie tygodnia: Analizator logów

    Posted by Marek Czuma on 2025-10-15 at 13:53

    Hej! Otwieram wątek dot. aktualnego zadania tygodnia. Chcę podsunąć kilka elementów i zachęcić do wykonania zadania, bo testuje ono nasze umiejętności programistyczne;-)

    Przypominam skrót polecenia:

    Mamy plik z logami i chcemy wykonać analizę. Dokładne elementy analizy są podane na stronie z zadaniem tygodnia.

    Jednak niezależnie od tego czy wybierzemy pythona czy scalę, może się pojawić się wątpliwość “od czego w ogóle zacząć?”. W załączniku wrzucam jak wygląda fragment tego pliku.

    Kilka punktów, które warto wziąć pod uwagę:

    1. Plik z logami to plik tekstowy. On sam w sobie nie ma żadnej struktury poza tym, że kolejne dane są zapisywane w nowych linijkach.
    2. W związku z tym wczytujemy kolejne linijki i dodajemy do np. listy/tablicy (grunt, żebyśmy mieli kolejność, choć w naszym przypadku i ona nie ma znaczenia)
    3. Gdy już mamy linijki jako osobne rekordy kolekcji (typ: String), mamy już pierwszą strukturę! Teraz warto to rozbić – zauważmy, że te dane są oddzielone przecinkami. Możemy więc podzielić stringa na kilka osobnych elementów poprzez split przecinkiem. W efekcie pojawia nam się lista gdzie każdy element jest kolejną listą/tablicą stringów
    4. Zamieniamy typy – ze stringów warto zbudować osobne typy. Możemy to zrobić albo przez jakąś sprytną pętlę, albo jakiś mechanizm tworzący listę obiektów klasy “Log” – wcześniej tworzymy taką klasę i jako konstruktor możemy utworzyć funkcje przyjmującą listę stringów, a wewnątrz niej zamieniać je na odpowiednie typy.
    5. Na koniec dostajemy pięknie przygotowaną listę elementów które możemy przeanalizować. Teraz warto zacząć to robić klasycznymi funkcjami, jakie daje nam wybrany język:-)

    Jeśli macie pytania – wrzucajcie śmiało. Albo swoje pomysły czy rozwiązania – nauczmy się wszyscy:-).

    To fajne ćwiczenie, bo nie jest ani długaśne ani banalne. Jednocześnie dokładnie to potem robimy jako inżynierowie danych, tylko z wykorzystaniem frameworków typu Apache Spark:-)

    • This discussion was modified 17 hours, 58 minutes ago by  Marek Czuma.
    Marek Czuma replied 18 hours ago 1 Member · 0 Replies
  • 0 Replies

Sorry, there were no replies found.

Zaloguj się aby odpowiedzieć