2010-06-10 2 views
-1

Я создаю какой-то пользовательский код регистрации, чтобы отслеживать, как люди используют наше веб-приложение. Я делаю это на странице Site.master в ASP.NET MVC, но мой вопрос на самом деле более общий. То, что я хотел бы сделать, - определить, как долго кто-то тратит на определенную страницу.Как рассчитать время посещения страницы для сайта

Я могу отслеживать, когда люди попадают на определенную страницу, но, очевидно, я не могу сказать, сколько времени они тратят на страницу с помощью любого кода на стороне сервера. То, что я делаю сейчас просто расчет вещи так:

Page А удар по времени T0 Page B ударен во время T1 поэтому кто-то, скорее всего, провел T1 -t0 время на странице А.

Теперь люди могут уйти от своего компьютера или что-то еще, поэтому у меня есть произвольный порог в 120 секунд. Если T1-T0> 120, тогда я просто записываю токен, который означает «неизвестно»

Это работает, но кажется довольно взломанным.

Есть ли у кого лучшее предложение? Мне не нужен код, просто алгоритм.

ответ

1

К сожалению, способ, которым вы описали, - это единственный способ сделать это, если у вас есть только время посещения страницы.

Однако, если вы можете поддержать более «аяксический» подход, вы должны иметь возможность обнаружить, когда пользователь перемещает мышь на вашу страницу и так далее, и посылает небольшие запросы на запрос на URL-адрес службы.

Это похоже на большую работу для очень маленького возвращения, tho.

0

Используя AJAX, вы сможете отправлять информацию на свой сервер при возникновении взаимодействия со страницей. Это даст вам большую точность в ваше время, но похоже, что это может быть излишним.

0

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

0

С помощью Ajax вы можете. Установите таймер JavaScript на каждые 10 секунд или что угодно, а затем каждый раз, когда он достигнет нуля, вызовите метод webservice, который будет записывать время, последнее на странице для пользователя.

0

Chartbeat делает это для вас в режиме реального времени. Следить за данными ужасно захватывающе, будьте осторожны.

Смежные вопросы