Case Studycentra danych / data centerArchitektura IT

Centrum Informatyki Resortu Finansów zwiększyło niezawodność działania systemu e-PIT dzięki narzędziom klasy APM

CASE STUDY

Centrum Informatyki Resortu Finansów (CIRF) specjalizuje się w utrzymaniu i monitorowaniu cyfrowych usług podatkowych, celnych i skarbowych. Klientami CIRF są Ministerstwo Finansów i Krajowa Administracja Skarbowa, a użytkownikami końcowymi wszyscy podatnicy w Polsce. W 2023 roku kierownictwo CIRF zdecydowało się na wykorzystanie, po raz pierwszy w pełnej skali, narzędzi klasy APM do monitorowania systemu e-PIT. O projekcie tym i rozszerzaniu ich funkcjonalności na kolejne systemy rozmawiamy z Hubertem Gniadowiczem, dyrektorem CIRF.

Centrum Informatyki Resortu Finansów zwiększyło niezawodność działania systemu e-PIT dzięki narzędziom klasy APM

Jaki był cel wdrożenia rozwiązań typu APM w Centrum Informatyki Resortu Finansów? Z jakimi wyzwaniami mierzyliście się wówczas?

To bardzo dobre pytanie, ponieważ mamy do czynienia z bardzo ciekawym kontekstem projektu. Projekt związany był z potrzebami Ministerstwa Finansów i Krajowej Administracji Skarbowej. Utrzymujemy 800 usług i aplikacji IT dla resortu finansów. Wiele z nich to usługi zewnętrzne, z których korzystają milionów podatników w Polsce. W samym roku 2023 drogą elektroniczną złożono prawie 12 mln – z ok. 20 mln – deklaracji PIT.

Co warto podkreślić, utrzymywane przez nas aplikacje są rozwijane w trybie Continuous Improvement. Cały czas się zmieniają, bo zmienia się w Polsce porządek prawny, a także – udostępniane obywatelom – formularze podatkowe. Na to nakładają się działania optymalizacyjne ze strony „biznesu”.

Systemów i danych zbieranych przez nadzorowane przez nas aplikacje jest bardzo dużo. Dodatkowo specyfiką pracy w administracji publicznej jest nastawienie na wyjątki. Tak też musimy być skrojony nasz system. Takich wyjątków są tysiące, a ich obsłużenie to nasz ustawowy obowiązek.

W firmach komercyjnych wyjątków właściwie nie bierze się pod uwagę. Tam tworzy się usługę dla klienta „standardowego”, masowego. Następnie próbuje się tak kreować jego potrzebę, aby wszedł w nasze „ramy”. W sektorze publicznym nie możemy tak działać. Tworzymy usługi, które muszą spełnić potrzeby 100% podatników.

Nie możemy „nietypowego klienta” wrzucić do puli wyjątków i za brak możliwości skorzystania z naszych usług zaproponować mu rekompensatę. Od strony projektowania, a następnie administrowania i utrzymania systemów jest to ogromne wyzwanie.

Zmienia to całkowicie sposób tworzenia oprogramowania, ale też nadzorowania jego pracy. Dlatego zdecydowaliśmy się – w zakresie monitorowania systemu e-PIT – na wdrożenie narzędzia APM firmy Dynatrace, które dostarczyło Omnilogy.

Jak obsługa wyjątków wpływa na funkcjonowanie systemu e-PIT?

Jak wspomniałem, usługa ta nie może być skrojona dla „typowego” obywatela, który ma umowę o pracę, rozlicza się ze współmałżonkiem i ma dwójkę dzieci. Deklarację PIT musi złożyć każdy, nawet najbardziej nietypowy podatnik z dochodami z wielu źródeł, różnymi ulgami, czy tzw. rozliczeniem wzajemnym.

75% za tyle zużycia zasobów systemu e-PIT – w szczytowych sytuacjach – odpowiadały wątki przetwarzające „coś” w tle. Kumulowanie i skoki ruchu powodowały wysycanie mocy obliczeniowej. Po szybkim sprawdzeniu danych okazało się, że nie były to żądania same w sobie. W normalnych okolicznościach tutaj skończyłaby się możliwość analizy tradycyjnych narzędzi do monitoringu.

To powoduje, że system – baza danych i aplikacja – który działa optymalnie dla standardowego klienta, a czasy jego odpowiedzi są na akceptowalnym poziomie, potrafi się zapętlić na nietypowym przypadku. Wielokrotnie – w poprzednich edycjach zbierania deklaracji PIT drogą elektroniczną – mieliśmy sytuacje, że dla 2, 20, czy 200 podatników wydarzało się coś, co niekorzystnie wpływało na działanie systemu e-PIT.

Na poziomie monitoringu infrastruktury, a nawet od strony działania aplikacji, nie da się wyłapać tego typu problemów. Dopiero narzędzia takie, jak Dynatrace potrafią wskazać gdzie konkretnie wystąpił krytyczny błąd, np. wzrost o kilkaset procent czasu odpowiedzi na zapytania, co wpływa nie tylko na tego, jednego podatnika, ale na wszystkich użytkowników systemu e-PIT.

Narzędzia APM – funkcjonujące w naszym „War Room’ie” – pozwalają, na zasadzie drop down, dotrzeć do przypadku konkretnego podatnika, przysłowiowego Jana Kowalskiego. Dzięki temu osoby z IT i „biznesu”, specjaliści od podatków z Krajowej Administracji Skarbowej, mogą zająć się jego przypadkiem, „wyciągnąć” go z kolejki przywracając poprawne funkcjonowanie systemu e-PIT.

Dzięki pełnemu monitoringowi wszystkich warstw systemu e-PIT oraz współpracy – i dobrej woli – wszystkich stron, wykryte błędy mogły być poprawiane lub obchodzone w kilka, kilkanaście czy kilkadziesiąt minut.

Jakie korzyści osiągnięto po wdrożeniu systemu APM firmy Dynatrace?

Wdrożenie tego typu narzędzi zmieniło naszą filozofię pracy. Pracujemy z ramię w ramię z biznesem. Działamy na problemie. Dzięki temu stworzyliśmy też atmosferę większego zaufania, większej potrzeby współpracy, ciągłego kontaktu. Jako IT mamy odpowiednie narzędzia i umiejętności, aby znaleźć i zdiagnozować każdy problem, a następnie go naprawić, nawet ręcznie. Biznes zaś ma dogłębną wiedzę na temat tego, jak go rozwiązać od strony operacyjnej i legislacyjnej. Wspólnie jesteśmy w stanie szybko zareagować.

Doświadczenia poprzednich lat nauczyły nas, że zwykły monitoring infrastruktury, monitoring jej parametrów IT jest niewystarczający. Musimy mieć narzędzia, które schodzą do przysłowiowego poziomu atomu – poszczególnych zapytań i podatników. Dopiero wówczas jesteśmy w stanie obsłużyć kolejki i zdiagnozować potencjalne problemy.

Na jakich warstwach działa APM?

System ten „schodzi” naprawdę bardzo głęboko. Pokazuje tak naprawdę to, co dzieje się na poziomie pojedynczych kolejek, zapytań, wątków, zagadnień. Możemy dzięki parametryzacji tego rozwiązania, określić „stany alarmowe”, które wymagają od nas działania.

Doświadczenia po uruchomieniu produkcyjnym systemu APM były niesamowite. Zupełnie, jakbyśmy odkryli mikroskop elektronowy, dzięki któremu jesteśmy w stanie dokonać zbliżenia kilka tysięcy razy. Widzimy co się dzieje w środku systemu, co „zakaża” jego zdrowy organizm. Dla nas to był kopernikański przewrót nie tylko w zakresie diagnozy błędów, ale też sposobu pracy, tego, że jesteśmy w stanie bardzo szybko wyłapać pojedyncze zagadnienia, zareagować i udrożnić działanie systemu.

Na jednej z prezentacji dotyczącej wdrożenia systemu APM pojawiło się hasło „odchudzony orzeł”. To jeden z pierwszych efektów pracy nowej platformy do monitoringu?

To sytuacja, która „wyszła” w pierwszej dobie funkcjonowania systemu e-PIT w roku 2023 już po wdrożeniu rozwiązania Dynatrace. Na większości stron rządowych można zauważyć godło Rzeczpospolitej Polskiej w postaci wysokiej jakości obrazu wektorowego. Zapewnia to spójność prezentacji. Okazało się jednak, że grafika ta w systemie e-PIT dostarczana była w pełnej rozdzielczości. Plik ten miał zaś aż 2,8 MB! Efektem było – po stronie podatnika – wolniejsze ładowanie strony, a po naszej wysycenie łącza.

Postanowiliśmy nieco „odchudzić” orła. Zredukowanie rozmiaru pliku graficznego z prawie 3 MB do 13 KB, czyli ponad 100-krotnie, zaowocowało skróceniem czasu pobierania strony serwisu e-PIT o ok. 0,4 sekundy oraz zmniejszeniem ogólnego jej rozmiaru z 2,8 MB do 1 MB. To z kolei przyczyniło się do 3-krotnie mniejszego użycia łącza i przyspieszenia łącznego wczytywania strony aż o 0,5 sekundy! Jak na dzisiejsze standardy funkcjonowania serwisów WWW jest to przeskok o całą epokę.

Tego nie dało się zdiagnozować na zwykłym oprogramowaniu monitorującym infrastrukturę IT. Możemy tak wykryć wzrost obciążenia, ale nie wiemy z czego on wynika, czy powodem nie jest np. specyfiki obsługi systemu. Problem ten wskazał nam zaś system APM.

Z jakich rozwiązań wcześniej korzystało Centrum Informatyki Resortu Finansów?

Z różnego typu oprogramowanie do monitoringu infrastruktury sprzętowej. To są dobre narzędzia. Sprawdzały się i przez wiele lat z nich korzystaliśmy. Ale to było za mało, aby móc dostarczyć usługę e-PIT na takim poziomie, jak w 2023 roku, czyli praktycznie bezawaryjną. Dzięki narzędziu APM mogliśmy też wprowadzać celowane poprawki w środowisku IT, wdrażać niezbędne zmiany związane z wyjątkowymi przypadkami pojedynczych podatników.

Decyzja o wdrożeniu APM zapadła, kiedy okazało się, że wszystkie optymalizacje infrastrukturalne i sieciowe – na które było nas stać zarówno technologicznie, jak i finansowo – nie poprawiały już funkcjonowania systemu e-PIT. Doszliśmy do sufitu, a wciąż mieliśmy do czynienia z jego niestandardowymi działaniami. Przyczyn ich nie byliśmy w stanie zdiagnozować. Na zwykłym monitoringu infrastrukturalnym, działaniach administracyjnych, nie byliśmy w stanie znaleźć źródła problemu.

Dopiero oprogramowanie APM wskazało na konkretne problemy. Sama aplikacja także bardzo szybko się uczy dzięki zaszytym w niej narzędziom opartym o algorytmy AI. Sugeruje pewne działania optymalizacyjne, wskazuje obserwowane trendy.

Warto pamiętać, że architektura logiczna systemu e-PIT jest bardzo skomplikowana. Każda prośba podatnika o szablon z wypełnionym formularzem PIT wymaga dziesiątek zapytań wywołanych w systemie. Wymaga też za każdym razem „zaciąnięcia” nowych danych. W trakcie całej akcji e-PIT – a trwa ona 2,5 miesiąca – dokonywanych jest też wiele korekt. Dodatkowo zmiany dokonywane są nie tylko w kontekście tego roku, ale i lat poprzednich.

System APM bardzo szybko się uczy i sugeruje, że niektóre z zapytań są np. nieoptymalne technologicznie. Jak się okazuje mogą być jednak optymalne biznesowo. Dlatego nie we wszystkich pracach AI może nas zastąpić. Na koniec to zawsze człowiek podejmuje więc decyzję o ewentualnej zmianie.

Trzeba też pamiętać, że każde działanie wystawionej przez nas usługi może mieć konsekwencje dla podatnika, Krajowej Administracji Skarbowej i Ministerstwa Finansów. Za złe działania grożą zaś sankcje. Nie możemy więc oddać AI pełnej kontroli. Jednak jej sugestie i podpowiedzi są nieocenione w naszej pracy.

W pierwszej kolejności w infrastrukturze CIRF zainstalowaliście sieć czujek.

Tak. Całe, nasze środowisko IT jest wyposażone w dziesiątki czujek, tak abyśmy mogli mieć pełną kontrolę nad pracą systemu. To podejście sprawdziło się. W 2023 roku system e-PIT miał rekordowo krótkie czasy niedostępności. Usługa zebrała też dużo pozytywnych opinii.

Czujki dostarczają nam niezbędne informacje, ale dopóki środowisko jest „puste”, to siłą rzeczy z tak małej próbki nie otrzymujemy zbyt wielu informacji. Kiedy jednak gwałtownie rośnie obciążenie, a w usłudze e-PIT jest to zawsze pierwszy dzień składania deklaracji, dostajemy dziesiątki analiz i sugestii zmian od systemu APM.

Na pewno doświadczenia i dane zebrane w roku 2023 wykorzystamy w tym. Wiele z nich uwzględniliśmy już w pracach przygotowawczych do uruchomienia tegorocznej edycji e-PIT.

Która z funkcjonalności systemu APM jest dla Was najważniejsza?

Zdecydowanie analityka. To dzięki niej byliśmy w stanie dojść do nieoczywistych wniosków. Tak było np. z logami, które często wykorzystywane są przez deweloperów do analizy źródła problemów. Niestety, czasami to one same stają się ich przyczyną.

Po analizie przyczyny opóźnień, system AMP wskazał, że problem wynika właśnie z tego konkretnego komponentu. Okazało się, że 96% czasu jest pochłaniane przez logi. Rozwiązaniem okazało się zmiana konfiguracji mechanizmów logowania. Przypadek systemu e-PIT pokazał nam, że zdarzenia prawie niezauważalne przy użyciu średnich, bardzo mocno ujawniają się na rozkładach percentylowych. Z pozoru niegroźne, chwilowe spowolnienia, które na początku dotykają tylko 5% użytkowników, z czasem zaczynają się wydłużać.

Problem ten – naszym zdaniem – był nie do wykrycia przez doświadczonych administratorów i deweloperów korzystających ze standardowych aplikacji monitorujących infrastrukturę IT. Dopiero narzędzia klasy APM potrafiły nam wskazać nieoczywiste wniosku, niekiedy kompletnie dla nas zaskakujące, nawet obrazoburcze (śmiech).

Kiedy weszliśmy w temat okazało się, że: po pierwsze system jest całością, a to znaczy, że nawet bardzo mały problem, który dotyczy części użytkowników może bardzo mocno obniżyć jego wydajność. Kiedy mamy miliony logowań, milion odpytań, dziesiątki milionów czy setki milionów zapytań w samych systemach – po to, aby wyciągnąć gotową deklarację – to problem, który dotyczy 5% użytkowników ma znaczenie. W skali 20 mln podatników daje to 1 mln osób.

Dostęp do bardzo dużej liczby analiz, które pokazują nie tylko błędy, ale też opóźnienia w funkcjonowaniu usługi powoduje, że natywne mechanizmy, które działają od lat, wobec których mamy absolutne przekonanie, że są „wygrzane” i bezpieczne mogą sprawiać problemy. Pokazanie tego efektu to było dla nas absolutnie genialnym spostrzeżeniem. W tradycyjny sposób, za pomocą innych narzędzi niż APM, nie dałoby się tego zrobić.

W krytycznych momentach kluczowe jest posiadanie kompletnych i kompleksowych danych oraz mechanizmów, takich jak algorytmy AI, które ułatwiają wykrywanie problemów. Dzięki temu współpracujące zespoły mogą podejmować szybkie, świadome i pewne decyzje, które pozwalają uniknąć wielu problemów zanim zdążą się one wyskalować. Narzędzia te oferują systemy AMP.

Czy narzędzie to zostanie rozszerzone na monitoring innych usług oferowanych przez CIRF?

Planujemy wdrożenie narzędzi klasy AMP na potrzeby Krajowego Systemu e-Faktur. Będzie to jeden z największych systemów IT w Polsce, przynajmniej w sektorze publicznym. Jego uruchomienie to także jedno z największych wyzwań, przed jakimi stoi resort finansów. KSeF stanie się swego rodzaju jądrem obrotu gospodarczego w Polsce. Dzisiaj nie jesteśmy nawet sobie w stanie wyobrazić sobie możliwości tego systemu i przyszłych, związanych z tym wyzwań.

Mówi się, że narzędzia APM można też rozszerzyć na monitoring proces tworzenia oprogramowania.

Tak właśnie jest. Już na etapie budowania systemu KSeF stosujemy monitoring wsparty narzędziami AMP. Dzięki temu możemy wskazywać nieoptymalne miejsca w kodzie czy inne przeszkody, które uniemożliwią wydajną pracę systemu. Wyłapujemy już teraz anomalie tak, aby dostarczyć usługę, która będzie zarówno maksymalnie użyteczna dla użytkownika, jak i bardzo wydajna. Przy rozwiązaniach tej klasy, tej wielkości jest to niezwykle istotne.

Tagi

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *