Лучший способ собрать статистику использования Rails-приложений - PullRequest
6 голосов
/ 07 января 2009

У меня есть приложение Rails, где пользователи могут настраивать свои домены и публиковать на них контент. Мне нужно собирать статистику общего трафика, такую ​​как количество просмотров страниц и т. Д. Одним из хороших примеров этой функции является статистика использования flickr, которую я могу видеть как клиент.

Вопрос в том, каков наилучший способ сбора информации об использовании. Должно ли это быть сделано путем синтаксического анализа файлов журнала или оно должно быть собрано и сохранено в базе данных во время выполнения? Есть ли какой-нибудь инструмент или плагин Rails, который уже обеспечивает это?

Это решение должно хорошо масштабироваться, даже с тысячами доменов и миллионами просмотров страниц в месяц.

Ответы [ 4 ]

5 голосов
/ 07 января 2009

Google Analytics - это, вероятно, ваш лучший выбор ...

2 голосов
/ 08 января 2009

Это зависит от того, что именно вы пытаетесь войти.

Я начал использовать http://github.com/smtlaissezfaire/enhanced_query_analyzer/tree/master в бета-версии системы для регистрации запросов. Конечно, вы можете сделать что-то похожее на просмотр страниц журнала с фильтром before в application.rb

Если вам нужно или хотите использовать базу данных, не хотите делиться информацией с Google и используете mysql, я бы посоветовал заглянуть в архив двигатель

1 голос
/ 07 января 2009

Уточните у своего хоста. Некоторые из них предоставляют статистику Urchin по умолчанию.

Кроме этого, большинство людей используют Google Analytics. Если вам нужна чрезвычайно мелкозернистая информация, вы можете попробовать некоторую постобработку на вашем production.log с помощью таких инструментов, как this one. Если вы выполняете постобработку в планировщике (например, cron), вам не нужно беспокоиться о производительности или слишком большом масштабировании.

0 голосов
/ 07 января 2009

Самое простое решение - просто купить Mint или использовать Google Analytics.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...