Инструмент Google Analytics LIKE - PullRequest
1 голос
/ 19 июля 2009

Я планирую написать свой собственный инструмент для отслеживания посетителей / продаж, так как Google Analytics и другие недостаточно разбираются в области данных. У них хорошие графические интерфейсы, но если у вас есть навыки работы с SQL, эти графические интерфейсы не нужны.

Мне интересно, как лучше всего это сделать.

Я мог бы просто записать IP и т. Д. В текстовый файл, а затем запустить асинхронную службу в фоновом режиме, чтобы выгрузить его в БД. Или, может быть, это излишне, и я могу просто положить это прямо в БД. Но один DB WRITE на каждый веб-запрос кажется плохим выбором в отношении масштабируемости. Мысли? * * 1005

В качестве идентификатора можно захватывать ссылающийся URL или любой входящий трафик, верно? Так что, если они пришли из сообщения на форуме или чего-то еще, вы можете отследить этот фактический URL, верно?

Просто кажется, что это очень стандартное требование, и я не хочу изобретать велосипед.

Как всегда, спасибо за понимание SOF.

Ответы [ 3 ]

3 голосов
/ 19 июля 2009

Ответ на на этот вопрос упоминает альтернативу GAnalytics с открытым исходным кодом Piwik - это не C #, но вы можете получить некоторые идеи, глядя на реализацию.

Для решения .NET я бы порекомендовал прочитать блог-пост Мэтта Берсета *1007* Visit / PageView Analysis Services (и ранее и пример и еще один пример , так как их нелегко найти на его сайте).

Я не уверен, разместил ли он когда-либо код на стороне сервера (хотя вы найдете его openurchin.js в его HTML-файле), но вы найдете большинство объясненных концепций. Вы могли бы, вероятно, заставить что-то работать довольно быстро, следуя его инструкциям.

Не думаю, что вы захотите писать в текстовый файл - могут возникнуть проблемы с блокировкой; Я бы пошел на вставки в таблицу базы данных. Если таблица становится слишком большой, вы всегда можете периодически «свернуть» результаты и очистить старые записи. Что касается URL-адреса REFERER, вы определенно можете получить эту информацию из заголовков HTTP (при условии, что она была отправлена ​​клиентом и не удалена прокси-серверами или строгими настройками AV / W).

Кстати, имейте в виду, что Google Analytics вносит большой вклад в статистику - он геокодирует IP-адреса для отображения результатов по местоположению (страна / город), а также по владельцу ISP / IP. Их javascript обеспечивает обнаружение Flash и сегментирует User-Agent на полезные «категории браузера», а также определяет другие пользовательские настройки, такие как операционная система и разрешение экрана. Это некоторая нетривиальная кодировка, которую вам придется делать, если вы хотите достичь того же уровня отчетности - не говоря уже о данных и расчетах для получения информации о странице входа и выхода, повторных посещениях, уникальных посетителях, повторных посетителях, времени, потраченном на сайт и т. д.

Существует Google Analytics API , который вы также можете попробовать.

0 голосов
/ 19 июля 2009

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

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

0 голосов
/ 19 июля 2009

Вы просматривали Log Parser для анализа журналов IIS?

...