• Czas czytania ~5 min
  • 22.05.2023

W tym artykule chciałbym podzielić się moim doświadczeniem w pracy w branży monitorowania, dostarczając spostrzeżeń na następujące pytania dotyczące obserwowalności i monitorowania:

  • Czy obserwowalność jest tym samym co monitorowanie?
  • Jaka jest różnica między obserwacją a monitorowaniem?
  • Jakie jest odpowiednie narzędzie dla każdego konkretnego problemu monitorowania?

Uruchomiłem Inspector trzy lata temu jako projekt poboczny, a teraz jest to firma bootstrapped z klientami w ponad dwudziestu krajach. Nawet dzisiaj prawie codziennie rozmawiam z programistami o ich potrzebach w zakresie monitorowania i nadal uczę się od innych programistów na wszystkich poziomach.

Jeśli szukasz rozwiązań do monitorowania w Google, znajdziesz mnóstwo narzędzi. Wiele z nich wygląda (lub sprzedawanych jako) narzędzia do monitorowania aplikacji, ale nie mają nic wspólnego z monitorowaniem aplikacji. Te podobieństwa mogą utrudnić ustalenie, które narzędzie było właściwe w zależności od konkretnych potrzeb.

Dlaczego monitorowanie i obserwowalność mają znaczenie

Czas, w którym wielu programistów odczuwa potrzebę kontrolowania swoich aplikacji, często zbiega się z momentem, w którym po raz pierwszy rozpoczynają pracę nad średnim / dużym projektem.

Powód jest prosty: gdy oprogramowanie staje się złożone lub służy bardzo cennym klientom, błędy oprogramowania stają się drogie; Podwójnie, gdy Twoi klienci je znajdą! Klienci mogą oceniać Cię jako niewiarygodnego i szukać alternatyw.

Monitorowanie to sposób, w jaki programiści unikają nieoczekiwanych incydentów i utrzymują klientów lub umowy tak długo, jak to możliwe, co oznacza stabilny dochód dla Twojej firmy w czasie.

Dzisiaj poruszanie się po świecie monitoringu może nie być tak łatwe, prawdopodobnie dlatego, że tak wiele różnych danych można wykorzystać na tak wiele różnych sposobów.

Czy obserwowalność jest tym samym co monitorowanie?

Zależy od kontekstu. Te dwa słowa są używane zamiennie w zależności od rodzaju posiadanego systemu.

Monitorowanie jest główną kategorią wszystkich tych narzędzi i platform. Odnosi się do działania sterowania skoncentrowanego na oprogramowaniu, w którym zbierasz dane w celu wizualizacji działania aplikacji podczas normalnego działania. Ostateczną korzyścią jest otrzymywanie alertów i powiadomień w przypadku wystąpienia anomalii.

Zamiast tego obserwowalność jest scentralizowanym monitorowaniem bardzo złożonych systemów. Jest to monitorowanie w scenariuszu na dużą skalę, gdzie spełnienie żądania wymaga przejścia przez dziesiątki serwerów i podsystemów.

Jest to typowy przypadek użycia w przedsiębiorstwie, w którym firma musi monitorować nie tylko aplikacje, ale także zachowanie całej infrastruktury, systemów zewnętrznych, mikroserwisów itp. w jednym scentralizowanym środowisku.

Jaka jest różnica między obserwacją a monitorowaniem?

Uważam, że skupianie się na definicjach "obserwowalność vs monitorowanie" jest całkowicie błędne. Reprezentują one tę samą pracę do wykonania. Zapewne wielu inżynierów mogłoby kręcić nosem na moją wypowiedź. Ale Twoi klienci nie wiedzą, jakiego podejścia do monitorowania używasz. Powinieneś skupić się na sukcesie!

Istnieje wiele działań w przepływie pracy deweloperów, które są funkcjonalne dla ich głównego celu, ale nie są celem. Monitorowanie jest wyraźnie jednym z nich.

Tak wiele firm, które tworzą narzędzia programistyczne, zapomina o tym prostym fakcie. W przeciwnym razie dostępne produkty są ukierunkowane na zbyt skomplikowane scenariusze, które są poza zasięgiem małych i średnich zespołów. Skutkuje to rozwiązaniami, które nie są przystępne cenowo.

Należy przyjrzeć się charakterystyce środowiska oprogramowania i wziąć pod uwagę dwie główne zmienne: złożoność i koszty.

Po ponad dziesięciu latach doświadczenia w branży monitoringu widziałem tylko kilka firm, które były w stanie podejść do monitoringu tak holistycznie, jak sugeruje koncepcja obserwowalności. Zazwyczaj duże firmy z dużymi zasobami finansowymi i ludzkimi.

Ze wszystkich opinii wysłuchanych w ciągu tych lat pracy w Inspector, najważniejszą cechą dla programistów są alarmy. Zdolność platformy do integracji ze środowiskiem pracy i automatycznego powiadamiania o błędach i wąskich gardłach.

Prawdopodobnie wybrane narzędzie musi opanować tę funkcję, aby mieć największe szanse na zadowolenie.

Oczywiście może to zależeć od zestawu danych zebranych przez narzędzie. Jeśli jesteś ciekawy, napisałem artykuł, który pomoże ci lepiej zrozumieć, jakie jest właściwe narzędzie dla każdego konkretnego problemu z monitorowaniem:

https://inspector.dev/how-code-execution-monitoring-can-help-you/

Mając dobry powód!

Zakładając, że "Jeśli holistyczne podejście jest dobre dla Netflix, jest dobre dla nas!" To jest największy powód, dla którego powinieneś tego unikać.

Musisz mieć jasną wizję i cele tego, co próbujesz osiągnąć. Powinieneś dokładnie określić, jakich korzyści szukasz w swoim zespole i stopniowo zwiększać skalę.

Nowy inspektor? Wypróbuj

teraz za darmo Czy jesteś odpowiedzialny za rozwój aplikacji w swojej firmie? Rozważ wypróbowanie mojego Inspektora produktów, aby automatycznie wykryć błędy i wąskie gardła w kodzie. Zanim Twoi klienci natkną się na problem.

Inspektor jest użyteczny dla każdego lidera IT, który nie potrzebuje niczego skomplikowanego. Jeśli potrzebujesz skutecznej automatyzacji, szczegółowych informacji oraz możliwości przekazywania alertów i powiadomień do preferowanego środowiska przesyłania wiadomości, wypróbuj Inspektora za darmo. Zarejestruj swoje konto.

Lub dowiedz się więcej na stronie: https://inspector.dev

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

O

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

O autorze CrazyBoy49z
WORK EXPERIENCE
Kontakt
Ukraine, Lutsk
+380979856297