Sklep przestał przyjmować płatności kartą w nocy z soboty na niedzielę. Monitoring nie wykrył problemu bo strona działała – tylko checkout był zepsuty. Klienci dostawali ogólny błąd „Nie można przetworzyć płatności”. Stracono kilkanaście godzin sprzedaży zanim zgłoszenie dotarło w poniedziałek rano. Czas naprawy: 45 minut po zgłoszeniu.
Nowy frontend React nie mógł komunikować się z Magento REST API. Każde żądanie AJAX kończyło się błędem CORS w konsoli przeglądarki. Backend działał poprawnie gdy testowano przez Postman lub curl. Czas naprawy: 2 godziny.
Integracja ERP ze sklepem przez REST API działała coraz wolniej. Pobieranie listy zamówień przez API trwało 45 sekund. Endpoint zwracał całą historię zamówień zamiast tych z ostatnich 24 godzin. Czas naprawy: 3 godziny.
Po migracji sklepu na nowy serwer zdjęcia produktów nie wyświetlały się – zamiast nich szare zastępniki. W bazie danych były ścieżki do plików, ale pliki nie istniały na dysku. Czas naprawy: 5 godzin.
Wzorzec Command enkapsuluje żądanie jako obiekt, co pozwala parametryzować operacje, kolejkować je, logować i implementować cofanie. W Magento 2 ten wzorzec jest podstawą systemu kolejkowania wiadomości (MessageQueue) – każda wiadomość to Command który jest wykonywany asynchronicznie przez consumer. Pokażę implementację od klasycznej wersji po integrację z kolejką Magento.
Nowa wersja modułu wdrożona na produkcję powodowała błąd 500 na całym sklepie. DI compilation kończyło się błędem o brakującym interfejsie. Problem był w zmianie sygnatury konstruktora bez aktualizacji di.xml. Czas naprawy: 1 godzina.
Klienci tracili zawartość koszyka i zostawali wylogowani losowo podczas zakupów. Problem nasilał się w weekendy przy dużym ruchu. Czas naprawy: 2 godziny.
Xdebug 3 zmienił sposób konfiguracji – zamiast wielu dyrektyw jedna opcja xdebug.mode steruje całym zachowaniem. Połączenie Xdebug 3, DDEV i PHPStorm daje kompletne środowisko: step debugger z breakpointami, profiler który generuje cachegrind, i coverage raporty dla PHPUnit. Pokażę konfigurację od zera i jak analizować wyniki profilera w PHPStorm i QCacheGrind.
Niestandardowe formularze w sklepie przestały działać po aktualizacji Magento. Błąd „Invalid Form Key” w logach. Własne endpointy AJAX rzucały wyjątek CSRF przy każdym żądaniu. Czas naprawy: 2 godziny.
Panel admina zawieszał się przy próbie otwarcia listy zamówień. Timeout po 30 sekundach. Baza danych zawierała 500 000 zamówień zgromadzonych przez 5 lat. Czas naprawy: 3 godziny.
