Promocja!

INŻYNIERIA OBSERWOWALNOŚCI DOSKONALENIE PRODUKCYJNYCH SYSTEMÓW OPROGRAMOWANIA

Pierwotna cena wynosiła: 69.00zł.Aktualna cena wynosi: 62.10zł.

Na stanie

Obserwowalność jest często mylnie uznawana za monitorowanie systemu. Tymczasem system jest obserwowalny, jeśli dzięki pochodzącym z niego danym można zrozumieć, jak on działa, jakie występują w nim problemy i jak wpływają one na jego działanie. Cechę tę można z powodzeniem wykorzystać w produkcyjnych systemach oprogramowania.

Wprowadzenie obserwowalności do systemów jest wyzwaniem technicznym i kulturowym. Dzięki tej praktycznej książce zrozumiesz wartość obserwowalnych systemów i nauczysz się praktykować programowanie sterowane obserwowalnością. Przekonasz się, że dzięki jej wdrożeniu zespoły mogą szybko i bez obaw dostarczać kod, identyfikować wartości odstające i nietypowe zachowania, a ponadto lepiej zrozumieją doświadczenia użytkownika. Znajdziesz tu szczegółowe wyjaśnienia, co jest potrzebne do uzyskania wysokiej obserwowalności, a także szereg wskazówek, jak ulepszyć istniejące rozwiązania i pomyślnie dokonać migracji ze starszych narzędzi, takich jak wskaźniki, monitorowanie i zarządzanie dziennikami. Dowiesz się również, jaki wpływ ma obserwowalność systemu na kulturę organizacji ― i odwrotnie.

W książce:

stosowanie obserwowalności do zarządzania oprogramowaniem w dużej skali
obserwowalność w procesie dostarczania złożonych aplikacji i systemów natywnych dla chmury
wpływ obserwowalności na cały cykl życia oprogramowania
stosowanie obserwowalności w połączeniu z poziomami SLO
instrumentacja kodu
debugowanie nieuchwytnych problemów

To ważna lektura dla każdego, kto chce zrozumieć obserwowalność systemów oprogramowania!

SPIS TREŚCI

Przedmowa

Wprowadzenie

Część I. Droga do obserwowalności

1. jest obserwowalność?

  • Matematyczna definicja obserwowalności
  • Zastosowanie obserwowalności do systemów oprogramowania
  • Błędne opisy obserwowalności oprogramowania
  • Dlaczego obserwowalność jest obecnie ważna
    • Czy to naprawdę najlepszy sposób?
    • Dlaczego wskaźniki i monitorowanie nie wystarczają?
  • Debugowanie z wykorzystaniem wskaźników a obserwowalność
    • Znaczenie kardynalności
    • Znaczenie liczby wymiarów
  • Debugowanie przy zapewnionej obserwowalności
  • Obserwowalność jest dostosowana do nowoczesnych systemów
  • Podsumowanie

2. Różnice w procesie debugowania przy stosowaniu monitorowania i obserwowalności

  • W jaki sposób dane systemów monitorowania są używane do debugowania?
    • Zachowania typowe dla rozwiązywania problemów z wykorzystaniem pulpitów nawigacyjnych
    • Ograniczenia rozwiązywania problemów na podstawie intuicji
    • Tradycyjne monitorowanie jest z natury reaktywne
  • W jaki sposób obserwowalność umożliwia lepsze debugowanie?
  • Podsumowanie

3. Lekcje wyciągnięte ze skalowania bez zapewnienia obserwowalności

  • Zapoznanie z firmą Parse
  • Skalowanie w firmie Parse
  • Ewolucja w kierunku nowoczesnych systemów
  • Ewolucja w kierunku nowoczesnych praktyk
  • Zmiana praktyk w firmie Parse
  • Podsumowanie

4. Związki obserwowalności z DevOps, inżynierią niezawodności i natywnym przetwarzaniem chmurowym

  • Natywne przetwarzanie chmurowe, DevOps i inżynieria niezawodności w pigułce
  • Obserwowalność a debugowanie kiedyś i dzisiaj
  • Obserwowalność umożliwia stosowanie praktyk z podejścia DevOps i inżynierii niezawodności
  • Podsumowanie

Część II. Podstawy obserwowalności

5. Ustrukturyzowane zdarzenia są elementami składowymi obserwowalności

  • Debugowanie z wykorzystaniem ustrukturyzowanych zdarzeń
  • Ograniczenia wskaźników jako podstawowych elementów składowych
  • Ograniczenia tradycyjnych dzienników jako podstawowych elementów składowych
    • Dzienniki nieustrukturyzowane
    • Dzienniki ustrukturyzowane
  • Właściwości zdarzeń przydatne w trakcie debugowania
  • Podsumowanie

6. Łączenie zdarzeń w ślady

  • Czym jest śledzenie rozproszone i dlaczego jest obecnie ważne
  • Komponenty śledzenia
  • Trudny sposób instrumentacji śledzenia
  • Dodawanie niestandardowych pól do przedziałów śladu
  • Łączenie zdarzeń w ślady
  • Podsumowanie

7. Instrumentacja z wykorzystaniem projektu OpenTelemetry

  • Krótkie wprowadzenie do instrumentacji
  • Otwarte standardy instrumentacji
  • Instrumentacja przy użyciu przykładów zilustrowanych kodem
    • Zacznij od instrumentacji automatycznej
    • Dodaj instrumentację niestandardową
    • Dane uzyskane dzięki instrumentacji wyślij do systemu backendowego
  • Podsumowanie

8. Analizowanie zdarzeń w celu uzyskania obserwowalności

  • Debugowanie na podstawie znanych warunków
  • Debugowanie według podstawowych zasad
    • Korzystanie z podstawowej pętli analiz
    • Automatyzacja „ataku siłowego” w podstawowej pętli analiz
  • Zwodnicze obietnice związane z podejściem AIOps
  • Podsumowanie

9. Jak połączyć obserwowalność z monitorowaniem?

  • Gdzie sprawdza się monitorowanie?
  • Gdzie sprawdza się obserwowalność?
  • Rozważania dotyczące systemu i oprogramowania
  • Ocena potrzeb organizacji
    • Wyjątki – monitorowanie infrastruktury, którego nie można zignorować
    • Praktyczne przykłady
  • Podsumowanie

Część III. Obserwowalność na poziomie zespołów

10. Stosowanie praktyk z obszaru obserwowalności w zespole

  • Dołącz do grupy społecznościowej
  • Zacznij od największych problemów
  • Kup zamiast budować
  • Iteracyjne opracowywanie instrumentacji
  • Szukaj okazji do wykorzystania już realizowanych projektów
  • Przygotuj się na najtrudniejszy ostatni krok
  • Podsumowanie

11. Programowanie sterowane obserwowalnością

  • Programowanie sterowane testami
  • Obserwowalność w cyklu rozwoju oprogramowania
  • Określanie miejsca debugowania
  • Debugowanie w epoce mikrousług
  • W jaki sposób instrumentacja umożliwia obserwowalność?
  • Przesunięcie obserwowalności na wcześniejsze etapy prac
  • Wykorzystanie obserwowalności do przyspieszenia udostępniania oprogramowania
  • Podsumowanie

12. Używanie poziomów SLO do zapewniania niezawodności

  • Tradycyjne metody monitorowania powodują niebezpieczne zmęczenie alertami
  • Alerty oparte na wartościach progowych dotyczą tylko „znanych niewiadomych”
  • Doświadczenie użytkownika jest drogowskazem
  • Czym są poziomy SLO?
    • Niezawodne alerty z wykorzystaniem poziomów SLO
    • Zmiana kultury w kierunku alertów opartych na poziomach SLO – studium przypadku
  • Podsumowanie

13. Podejmowanie działań i debugowanie na podstawie alertów opartych na poziomach SLO

  • Zgłaszanie alertów przed wyczerpaniem budżetu błędów
  • Reprezentowanie czasu w formie okna przesuwnego
  • Przewidywania w celu utworzenia prognostycznego alertu dotyczącego spalania
    • Okno wyprzedzające
    • Okno bazowe
    • Działanie na podstawie alertów dotyczących spalania opartych na poziomach SLO
  • Obliczanie poziomów SLO na podstawie obserwowalności i z użyciem danych z szeregów czasowych
  • Podsumowanie

14. Obserwowalność a łańcuch dostarczania oprogramowania

  • Dlaczego Slack wymagał wdrożenia obserwowalności?
  • Instrumentacja – współdzielone biblioteki klienckie i wymiary
  • Studia przypadków: operacjonalizacja łańcucha dostarczania
    • Jak zrozumieć kontekst za pomocą narzędzi
    • Dodawanie alertów umożliwiających podejmowanie działań
    • Zrozumienie, co się zmieniło
  • Podsumowanie

Część IV. Obserwowalność w dużej skali

15. Zbudować czy kupić? Zwrot z inwestycji

  • Jak analizować zwrot z inwestycji w obserwowalność?
  • Rzeczywiste koszty budowania własnego rozwiązania
    • Ukryte koszty korzystania z „darmowego” oprogramowania
    • Korzyści z budowania własnych narzędzi
    • Zagrożenia związane z tworzeniem własnego rozwiązania
  • Rzeczywiste koszty zakupu oprogramowania
    • Ukryte koszty finansowe oprogramowania komercyjnego
    • Ukryte koszty niefinansowe oprogramowania komercyjnego
    • Korzyści z zakupu oprogramowania komercyjnego
    • Zagrożenia związane z zakupem oprogramowania komercyjnego
  • Zakup lub budowanie nie jest wyborem albo jedno, albo drugie
  • Podsumowanie

16. Wydajny magazyn danych

  • Wymagania funkcjonalne z obszaru obserwowalności
    • Bazy danych dla szeregów czasowych są nieodpowiednie do zapewniania obserwowalności
    • Inne możliwe magazyny danych
    • Strategie przechowywania danych
  • Studium przypadku: implementacja magazynu danych Retriever z systemu Honeycomb
    • Podział danych według czasu
    • Przechowywanie danych w segmentach według kolumn
    • Wykonywanie procesów pracy związanych z zapytaniami
    • Zapytanie dotyczące śladów
    • Zapytania o dane w czasie rzeczywistym
    • Obniżanie kosztów dzięki poziomom
    • Zapewnianie szybkości dzięki przetwarzaniu równoległemu
    • Radzenie sobie z wysoką kardynalnością
    • Strategie dotyczące skalowania i trwałości
    • Uwagi na temat budowania własnego wydajnego magazynu danych
  • Podsumowanie

17. Tanie i wystarczająco dokładne – próbkowanie

  • Próbkowanie w celu udoskonalenia gromadzenia danych
  • Różne metody próbkowania
    • Próbkowanie ze stałym prawdopodobieństwem
    • Próbkowanie na podstawie natężenia ruchu w ostatnim okresie
    • Próbkowanie na podstawie treści zdarzenia (kluczy)
    • Łączenie metody opartej na kluczu z historyczną
    • Wybór technik próbkowania dynamicznego
    • Kiedy podejmować decyzję o pobieraniu próbek dla śladów?
  • Przekładanie strategii próbkowania na kod
    • Przypadek podstawowy
    • Próbkowanie ze stałą częstotliwością
    • Rejestrowanie częstotliwości próbkowania
    • Spójne próbkowanie
    • Próbkowanie z docelową częstotliwością
    • Stosowanie więcej niż jednej statycznej częstotliwości próbkowania
    • Próbkowanie na podstawie klucza i docelowej częstotliwości
    • Próbkowanie z dynamicznie określaną częstotliwością dla dowolnej liczby kluczy
    • Łączenie wszystkich elementów – próbkowanie przed zdarzeniem i po zdarzeniu z docelową częstotliwością dla poszczególnych kluczy
  • Podsumowanie

18. Zarządzanie telemetrią z wykorzystaniem potoków

  • Cechy potoków telemetrycznych
    • Przekazywanie danych
    • Bezpieczeństwo i zgodność z przepisami
    • Izolacja obciążeń
    • Buforowanie danych
    • Zarządzanie zasobami
    • Filtrowanie i rozszerzanie danych
    • Transformacja danych
    • Zapewnienie jakości i spójności danych
  • Zarządzanie potokiem telemetrycznym – struktura
  • Wyzwania związane z zarządzaniem potokiem telemetrycznym
    • Wydajność
    • Poprawność
    • Dostępność
    • Niezawodność
    • Izolacja
    • Świeżość danych
  • Przypadek użycia – zarządzanie telemetrią w firmie Slack
    • Agregacja wskaźników
    • Wpisy z dziennika i zdarzenia ze śladu
  • Otwartoźródłowe zastępniki
  • Zarządzanie potokiem telemetrycznym – rozwijać czy kupować?
  • Podsumowanie

Część V. Rozpowszechnianie kultury obserwowalności

19. Biznesowe uzasadnienie wprowadzania obserwowalności

  • Reaktywne podejście do wprowadzania zmian
  • Zwrot z inwestycji w obserwowalność
  • Proaktywne podejście do wprowadzania zmian
  • Wprowadzenie obserwowalności jako praktyki
  • Korzystanie z odpowiednich narzędzi
    • Instrumentacja
    • Przechowywanie i analiza danych
    • Wdrażanie narzędzi w zespołach
  • Kiedy obserwowalność jest wystarczająca?
  • Podsumowanie

20. Interesariusze i sojusznicy przy wprowadzaniu obserwowalności

  • Rozpoznawanie nieinżynieryjnych potrzeb z obszaru obserwowalności
  • Zdobywanie sojuszników w obszarze obserwowalności w praktyce
    • Zespoły wsparcia klienta
    • Zespoły ds. sukcesu klienta i produktu
    • Zespoły sprzedażowe i wykonawcze
  • Obserwowalność a narzędzia do analityki biznesowej
    • Czas wykonywania zapytań
    • Dokładność
    • Aktualność
    • Struktura
    • Okna czasowe
    • Efemeryczność
  • Jednoczesne korzystanie z narzędzi do zapewniania obserwowalności i narzędzi do analityki biznesowej w praktyce
  • Podsumowanie

21. Model dojrzałości obserwowalności

  • Uwaga na temat modeli dojrzałości
  • Dlaczego obserwowalność wymaga modelu dojrzałości?
  • O modelu dojrzałości obserwowalności
  • Kompetencje wymienione w modelu dojrzałości obserwowalności
    • Odporność na awarie systemu
    • Dostarczanie wysokiej jakości kodu
    • Zarządzanie złożonością i długiem technicznym
    • Udostępnianie w przewidywalnym cyklu
    • Zrozum zachowanie użytkownika
  • Korzystanie z modelu dojrzałości obserwowalności dla organizacji
  • Podsumowanie

22. Dalsze działania

  • Obserwowalność kiedyś i dziś
  • Dodatkowe materiały
  • Prognozy dalszego rozwoju obserwowalności
Autor

ISBN

978-83-289-1198-7

Liczba stron

Rok wydania

Wydawca

Opinie

Na razie nie ma opinii o produkcie.

Napisz pierwszą opinię o „INŻYNIERIA OBSERWOWALNOŚCI DOSKONALENIE PRODUKCYJNYCH SYSTEMÓW OPROGRAMOWANIA”

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