Лучший способ создать собственную аналитику для моего приложения на Rails 3? - PullRequest
6 голосов
/ 02 июня 2011

У меня есть приложение на Rails 3, для которого я хочу создать собственную аналитику. Элементы, которые нужно отслеживать, - это показы (и уникальные показы), клики, полученные из этих показов, и конверсии, полученные из этих кликов. И все они зависят от пользователя, поэтому каждый пользователь может видеть, сколько показов, кликов и конверсий он получил.

Как лучше всего это сделать? Должен ли я создать отдельное приложение для рельсов и назвать его пикселями? Или я должен включить весь код аналитики в одно приложение?

Кроме того, существуют ли какие-либо аналитические платформы, которые я могу настроить в соответствии со своими потребностями?

Спасибо!

Тим

Ответы [ 3 ]

6 голосов
/ 02 июня 2011

Прежде чем вы начнете заново изобретать колесо, Google Analytics предоставит API для разработчиков (через OAuth, среди прочих вариантов), который может предоставить вам возможность делать то, что вам нужно (предоставить каждому пользователю представление своих данных) .

http://code.google.com/apis/analytics/docs/gdata/home.html

Создание собственного, хотя это может показаться поначалу базовым делом, может иметь серьезные последствия для производительности в дальнейшем, и Google предоставляет очень подробное представление данных.

Если вы действительно хотите написать свой собственный, я настоятельно рекомендую вам не обращаться к базе данных для каждого запроса, который вы хотите отслеживать. Сохраните данные в Redis или в одном из вариантов и периодически сохраняйте их в базе данных с помощью фоновой задачи.

4 голосов
/ 14 июля 2011

Если, однако, вы не хотите помещать свои данные в лапы нашего Google Overlord :), то вы действительно можете подумать о том, чтобы свернуть свои собственные.У меня есть два раза раньше - и я делаю это снова прямо сейчас: лучше на этот раз, конечно!

Если ваш трафик не очень высокий, и вы работаете на любом приличном сервереЗатем добавление системы слежения за платформой не обременительно для вашего Rails-приложения (я знаю, что это зависит от того, что означает «достойная серверная платформа», но в наши дни это довольно дешево).Запись в базу данных, как правило, выполняется очень быстро - вам нужно будет несколько кликов, чтобы не делать этого сразу.Вероятно, вы можете обойти большинство, если не все ваши before_filters и так далее, чтобы получить молниеносный ответ.Например, одно приложение, которое работает под управлением 2.3.9, использует Metal для этого.

В моей новой системе отслеживания у меня есть таблица STI, которая соответствует моделям, полученным из модели Activity;здесь вы можете записывать как показы, так и клики.Показы записываются по мере создания страницы, а клики записываются с использованием AJAX.

Я не собираюсь беспокоиться о причудливых графиках и т. Д.Конечно.

В данный момент моя система находится в обычном приложении / папке, но я, вероятно, перенесу ее на движок, чтобы мне было проще ее повторно использовать.

Надеюсь, это поможет!

Кстати, я использую Google Analytics и для целого ряда сайтов, и это нормально - мне просто нравится делать это самому.

1 голос
/ 02 июня 2011

В зависимости от того, как вы собираетесь связать данные Google Analytics с конкретным пользователем, вам может потребоваться перепроверить последствия для конфиденциальности.Google не разрешает связывать свои данные с какой-либо идентифицирующей информацией о отслеживаемых пользователях.

Если есть проблема, вы можете попробовать Piwik, так как он с открытым исходным кодом, и вы можете делать с ним все что угодно,Он написан на PHP, а не на Ruby, так что это может быть проблемой.Как упоминает @ d11wtq, системы отслеживания могут иметь проблемы с производительностью, если они не собраны должным образом, поэтому вам лучше начать с того, что уже доказало свою работоспособность, если это возможно.

...