Najlepszy sposób na zbieranie statystyk użycia aplikacji Rails

Mam aplikację Rails, w której użytkownicy mogą skonfigurować swoje domeny i publikować na nich treści. Muszę zbierać statystyki ruchu publicznego, takie jak liczba wyświetleń itp. Dobrym przykładem tej funkcji są statystyki korzystania z flickr, które widzę jako klient.

Pytanie brzmi, jaki jest najlepszy sposób zbierania informacji o użytkowaniu. Czy powinno to być wykonane przez parsowanie plików dziennika, czy powinno być gromadzone i przechowywane w bazie danych w czasie wykonywania? Czy jest jakieś narzędzie lub wtyczka Rails, które już zapewnia to?

To rozwiązanie powinno być dobrze skalowane, nawet przy tysiącach domen i milionach odsłon w miesiącu.

Author: Priit, 2009-01-07

4 answers

To zależy dokładnie od tego, co próbujesz zalogować.

Zacząłem używać http://github.com/smtlaissezfaire/enhanced_query_analyzer/tree/master w systemie produkcji beta do logowania zapytań. Z pewnością można zrobić coś podobnego do wyświetlenia strony dziennika z filtrem przed w aplikacji.rb

Jeśli potrzebujesz lub Chcesz użyć bazy danych, nie chcesz udostępniać swoich informacji google, a korzystasz z mysql, proponuję zajrzeć do archiwum silnik

 2
Author: user52804,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-08 07:26:33

Google Analytics jest prawdopodobnie najlepszym rozwiązaniem...

 5
Author: Matt Darby,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-07 15:55:59

Sprawdź u swojego gospodarza. Kilka z nich domyślnie podaje statystyki jeżowców.

Poza tym większość ludzi korzysta z Google Analytics. Jeśli potrzebujesz bardzo drobnoziarnistych informacji, możesz wypróbować post processing na swojej produkcji.Zaloguj się za pomocą narzędzi takich jak this one. Jeśli wykonujesz post-processing na harmonogramie (takim jak cron), nie powinieneś martwić się o wydajność lub zbyt duże skalowanie.

 1
Author: Bill,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-07 16:27:01

Najprostszym rozwiązaniem jest prawdopodobnie po prostu kupić Mint lub skorzystać z Google Analytics.

 0
Author: Steve Losh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-07 16:01:16