Exemplo n.º 1
0
def _reset_tracking():
    if redis is None:
        return {}

    keys = redis.keys('gedgo_*')
    for key in keys:
        redis.delete(key)

    redis.set('gedgo_tracking_start', int(time.time()))
Exemplo n.º 2
0
def _reset_tracking():
    if redis is None:
        return {}

    keys = redis.keys('gedgo_*')
    for key in keys:
        redis.delete(key)

    redis.set('gedgo_tracking_start', int(time.time()))
Exemplo n.º 3
0
def user_tracking(request, user_id):
    if not request.user.is_superuser:
        raise Http404

    user = get_object_or_404(User, id=user_id)
    count = redis.keys('gedgo_user_%d_page_view_count' % user.id)
    if not count:
        raise Http404

    views = redis.lrange('gedgo_user_%d_page_views' % user.id, 0, -1)
    views = [_load_page_view(v) for v in views]

    return render(request, 'user_tracking.html', {
        'user': user,
        'count': count,
        'views': views
    })
Exemplo n.º 4
0
def user_tracking(request, user_id):
    if not request.user.is_superuser:
        raise Http404

    user = get_object_or_404(User, id=user_id)
    count = redis.keys('gedgo_user_%d_page_view_count' % user.id)
    if not count:
        raise Http404

    views = redis.lrange('gedgo_user_%d_page_views' % user.id, 0, -1)
    views = [_load_page_view(v) for v in views]

    return render(
        request,
        'user_tracking.html',
        {
            'user': user,
            'count': count,
            'views': views
        }
    )
Exemplo n.º 5
0
def _page_view_stats():
    if redis is None:
        return datetime.datetime.utcnow(), {}, 0

    user_keys = redis.keys('gedgo_user_*_page_view_count')
    users = User.objects.filter(
        id__in=[int(k.split('_')[2]) for k in user_keys])

    user_views = []
    for user in users:
        last = redis.lrange('gedgo_user_%d_page_views' % user.id, 0, 0)[0]
        pvc = redis.get('gedgo_user_%d_page_view_count' % user.id)
        user_views.append({
            'user': user,
            'last_view': _load_page_view(last)['timestamp'],
            'count': pvc
        })
    user_views = sorted(user_views, key=lambda x: x['last_view'], reverse=True)

    tracking_start = _timestamp_from_redis('gedgo_tracking_start')

    return tracking_start, user_views, redis.get('gedgo_page_view_count')
Exemplo n.º 6
0
def _page_view_stats():
    if redis is None:
        return datetime.datetime.utcnow(), {}, 0

    user_keys = redis.keys('gedgo_user_*_page_view_count')
    users = User.objects.filter(
        id__in=[int(k.split('_')[2]) for k in user_keys]
    )

    user_views = []
    for user in users:
        last = redis.lrange('gedgo_user_%d_page_views' % user.id, 0, 0)[0]
        pvc = redis.get('gedgo_user_%d_page_view_count' % user.id)
        user_views.append({
            'user': user,
            'last_view': _load_page_view(last)['timestamp'],
            'count': pvc
        })
    user_views = sorted(user_views, key=lambda x: x['last_view'], reverse=True)

    tracking_start = _timestamp_from_redis('gedgo_tracking_start')

    return tracking_start, user_views, redis.get('gedgo_page_view_count')