django-traces

A reusable app to track view hits


Keywords
django, app, reusable, traces, tracking, analytics
License
MIT
Install
pip install django-traces==0.4

Documentation

django-traces

A reusable app to track view hits.

Installation

To get the latest stable release from PyPi

$ pip install django-traces

To get the latest commit from GitHub

$ pip install -e git+git://github.com/bitmazk/django-traces.git#egg=traces

Add traces to your INSTALLED_APPS

INSTALLED_APPS = (
    ...,
    'traces',
)

Add the traces URLs to your urls.py

urlpatterns = patterns('',
    ...
    url(r'^traces/', include('traces.urls')),
)

Don't forget to migrate your database

./manage.py migrate traces

Usage

If you want to track a certain view just add our middleware:

MIDDLEWARE_CLASSES = (
    ...
    'traces.middleware.TracesMiddleware',
)

...and add the view name/url name to the setting TRACED_VIEWS. If you have added a view like this:

url(r'^$', TemplateView.as_view(template_name='test.html'), name='test_view'),

...your setting should look like:

TRACED_VIEWS = ['test_view', ]

The app will now track all visits to this view.

Template tags

get_view_hits

To get the current amount of requests for this view:

{% load traces_tags %}
{% get_view_hits as hits %}
Hits: {{ hits }}

You can also provide the view name to get any view hits:

{% load traces_tags %}
{% get_view_hits 'view_name' as hits %}
Hits: {{ hits }}

{% get_view_hits 'model_view_name' object as model_view_hits %}
Hits: {{ model_view_hits }}

Settings

TRACED_VIEWS

Default: []

List all view names to track.

Contribute

If you want to contribute to this project, please perform the following steps

# Fork this repository
# Clone your fork
$ mkvirtualenv -p python2.7 django-traces
$ python setup.py install
$ pip install -r dev_requirements.txt

$ git co -b feature_branch master
# Implement your feature and tests
$ git add . && git commit
$ git push -u origin feature_branch
# Send us a pull request for your feature branch