2012-06-22 16 views
7

Szukam dobrej procedury obsługi komunikatów ostrzegawczych/informacji w aplikacjach Railsowych. Na przykład, ile razy użytkownicy wpisują błędne hasło, ile razy sprawdzanie poprawności modeli zawodzi, itp. Szczególnie szukam skutecznego sposobu na operacjonalizację tych danych, ponieważ nie są one wyjątkami, ale mogą wskazywać potencjalne błędy lub problemy z funkcjonalnością.Rejestrowanie ostrzeżeń (nie błędów) w aplikacji szyny i zarządzanie nimi

Solutions Jestem kopanie wokół są:

  • Rejestrowanie wiadomości ostrzeżenia lub INFO i używając Splunk je analizować (niestety Splunk jest ver drogie)
  • Wysyłanie błędy airbrake w środowisku UWAGA

Odpowiedz

1

Powinieneś rzucić okiem na Papertrail jako alternatywę dla Splunk + Airbrake. Wydaje się, że lepiej pasuje, jeśli jesteś zainteresowany logowaniem.

1

Innym podejściem do tego byłoby użycie czegoś w rodzaju StatsD w połączeniu z(lub alternatywą open source z Graphite). StatsD (i w konsekwencji Librato/Graphite) działają w oparciu o UDP, więc jest to niewiarygodnie tani sposób na instrumentowanie, jak chcesz, na przykład w przypadku nieudanych prób logowania lub tworzenia użytkowników. Możesz wdrożyć do czasu poszczególnych bloków kodu, a także po prostu powiedzieć "ta metoda została wywołana."

Jest to podejście, które Etsy pchnął naprzód około 3 lata temu i zasadniczo pozwala uzyskać aplikację "bicie serca" do wykorzystania w monitorowaniu, gdy wdrożenia zostały wykonane źle lub funkcjonalność nie działa zgodnie z przeznaczeniem/jest normalne. Co więcej, jest to świetny sposób, aby uzyskać łatwe pulpity nawigacyjne w stylu "wykonawczym", aby pokazać, że wszystko działa zgodnie z założeniami i że aplikacja jest zdrowa.

1

Nota prawna: moja firma zbudowała, jest właścicielem i operatorem Instrumental.

Używamy wewnętrznie instrumentu Instrumental do śledzenia częstotliwości występowania błędów (w rzeczywistości używaliśmy Instrumentala do śledzenia i zmiażdżenia ostatnio błędu rejestracji) i śledzenia innych problemów, które nie są rzeczywistymi wyjątkami.

realizacja

Rails jest bardzo łatwe (jesteśmy Szyny faceci też tak zrobiliśmy Gem):

https://github.com/fastestforward/instrumental_agent

Można by po prostu chcą dodać trochę oprzyrządowanie wokół rzeczą, którą chcesz jak mierzyć

jakąś dokumentację o miary błędów, błędów i innych wydarzeń (błędne wprowadzenie hasła, lub w przypadku braku walidacji, w tym przypadku.):

https://instrumentalapp.com/docs

Powiązane problemy