running-chaos-tests
Execute chaos engineering experiments to test system resilience.\nUse when performing specialized testing.\nTrigger with phrases like \
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Execute chaos engineering experiments to test system resilience.\nUse when performing specialized testing.\nTrigger with phrases like \
How to use
Przygotuj środowisko: upewnij się, że masz rozproszoną architekturę lub mikrousługi wdrożone w środowisku staging/test, skonfigurowane monitorowanie (Grafana, Datadog, CloudWatch, Prometheus) oraz zainstalowane narzędzie chaos engineering (toxiproxy, Pumba, Litmus lub Chaos Mesh). Uzyskaj wyraźną zgodę zespołu na uruchomienie eksperymentów.
Zdefiniuj hipotezę stanu ustalonego: określ mierzalne wskaźniki normalnego zachowania systemu (np. p99 latencja poniżej 500ms, wskaźnik błędów poniżej 0,1%, wszystkie health checki przechodzą). Zapisz metryki bazowe przed wstrzyknięciem jakichkolwiek błędów. Określ blast radius — które usługi i użytkownicy będą dotknięci eksperymentem.
Zaprojektuj eksperymenty chaotyczne: wybierz kategorię testów — sieciowe (wstrzyknij latencję 200-2000ms, utratę pakietów 5-50%, awarię DNS), procesowe (zabij instancję usługi, wyczerpaj CPU/pamięć), zależności (zablokuj dostęp do bazy danych, cache'u, API) lub stan (uszkodzenie danych, clock skew).
Uruchom eksperymenty: użyj frazy "run chaos tests", "test resilience" lub "inject failures", aby aktywować skill. Narzędzie będzie wstrzykiwać błędy zgodnie z zaprojektowanymi scenariuszami.
Monitoruj i zbieraj dane: obserwuj metryki systemu w trakcie eksperymentu. Zweryfikuj, czy system zachowuje się zgodnie z hipotezą stanu ustalonego i czy degradacja jest kontrolowana.
Analizuj wyniki i iteruj: przeanalizuj, jak system reaguje na każdy typ błędu. Użyj wyników do identyfikacji słabych punktów i poprawy odporności. Powtórz eksperymenty z nowymi scenariuszami lub większą intensywnością.