Инструмент НРАВИТСЯ Google Analytics

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

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

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

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

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

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


person Scott Klarenbach    schedule 19.07.2009    source источник


Ответы (3)


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

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

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

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

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

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

person Conceptdev    schedule 19.07.2009
comment
Спасибо, Крейг, я проверю это. Да, я все еще планирую сохранить Google Analytics по всем причинам, которые вы предлагаете. Я просто дополняю с моей собственной импл. Основные недостающие функции, по-видимому, следующие: я хочу регистрировать КАЖДЫЙ раз, когда ваш IP-адрес попадает на мой сайт, и где была размещена эта реклама. Затем, когда/если вы совершите покупку, я также хочу зарегистрировать это. Таким образом, я могу увидеть, какая реклама наиболее эффективна для каждого ПОСЕТИТЕЛЯ и для каждой РЕГИСТРАЦИИ. Также полезно знать, сколько раз вам приходилось возвращаться, чтобы купить и т. д. Может быть, их апи поможет, я проверю это. - person Scott Klarenbach; 20.07.2009
comment
Вам обязательно стоит взглянуть на отслеживание электронной торговли в GAnalytics, если вы еще этого не сделали. Он позволяет проводить анализ доходов по языку, местоположению в сети и по ключевым словам источника трафика, ПЛЮС количество посещений до покупки, количество дней до покупки и т. д. Вам нужно добавить дополнительный javascript на страницу завершения заказа, но это того стоит для дополнительные отчетные данные. Также проверьте их отслеживание кампаний code.google.com/apis/analytics/ docs/gaJS/ GAnalytics намного сложнее, чем кажется на первый взгляд. - person Conceptdev; 20.07.2009

Вы просматривали анализатор журналов парсить журналы IIS?

person Mitch Wheat    schedule 19.07.2009
comment
Это выглядит круто, как побочное примечание, я проверю это, если решу пойти по пути ведения журнала текста. - person Scott Klarenbach; 20.07.2009

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

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

person Dan Diplo    schedule 19.07.2009
comment
Спасибо, Дэн, возможно, ты прав насчет аналитики. См. мой комментарий выше Крейгу. Главное, что я хочу отслеживать, — это количество посещений по сравнению с количеством продаж и сколько раз вам пришлось вернуться, чтобы совершить покупку. Кроме того, я не вижу ничего в Google Analytics для отслеживания точного URL перехода, с которого пришел каждый посетитель. Итак, если я размещу сегодня 10 объявлений, я хочу посмотреть, какие объявления привлекли тех или иных посетителей. Впоследствии я хочу увидеть, кто из этих посетителей ВЕРНУЛСЯ и купил. Если я что-то не упустил, я не думаю, что GA имеет такой уровень глубины. - person Scott Klarenbach; 20.07.2009
comment
Привет Скотт. Вы изучали цели и последовательности с помощью Analytics? См.: google.com/support/analytics/bin/. Удачи! - person Dan Diplo; 20.07.2009