Istnieje wiele sposobów budowania oprzyrządowania, dopóki nie dowiesz się, co stanowi dobre oprzyrządowanie. Moje instrukcje pochodzą zasadniczo od wpisu w Wikipedii https://en.wikipedia.org/wiki/Instrumentation .
Poradniki na temat oprzyrządowania
http://www.powersemantics.com/e.html
- Niezintegrowane
- Tylko dane podstawowe
- Nie ciągnij
- Zorganizowane według procesu
- Nigdy offline
Rozwiązanie problemu pomiaru wskaźników istnieje, ale utknąłeś w wyobrażaniu sobie, w jaki sposób oprzyrządowanie „push” może sygnalizować inny system. Jak wyjaśnia mój artykuł E, instrumenty powinny zawsze pobierać dane, nigdy ich nie popychać. Sygnalizacja zdarzeniowa jest potencjalnym punktem awarii, którego nie potrzebujesz.
Aby wyjaśnić wszelkie niezdecydowanie lub wątpliwości związane z budowaniem oddzielnej aplikacji, monitory są zwykle niezależnymi ( niezintegrowanymi, jak mówi Wikipedia) procesami. Mówiąc, że Twój monitor „może nie działać” oznacza, że nie zdecydowałeś się zbudować prawdziwego niezintegrowanego monitora, który zawsze jest włączony. Twój system konsumencki nieprawidłowo modeluje oprzyrządowanie, ponieważ integruje kontrolę we własnym procesie.
Rozdziel te obowiązki i kontynuuj. Zdecyduj, jak często instrument powinien racjonalnie odpytywać o usunięte usługi i sondować dane za pomocą timera. Jeśli użyjesz sugerowanego wywołania API simon-pearson, możesz również wykryć, kiedy usługi zostały dodane. Oczywiście monitor musi lokalnie buforować kopię listy usług, aby wskaźniki mogły wywnioskować, co zostało dodane lub usunięte.