d0aeb7ae5b0455df1bfa0b5afc878900271343dd
[wolnelektury.git] / src / stats / tasks.py
1 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
2 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
3 #
4 from celery.task import task
5 from django.conf import settings
6 from http.client import HTTPConnection
7 import logging
8 from urllib.parse import urlsplit
9
10 logger = logging.getLogger(__name__)
11
12
13 PIWIK_API_VERSION = 1
14
15 # Retrieve piwik information
16 try:
17     _host = urlsplit(settings.PIWIK_URL).netloc
18 except AttributeError:
19     logger.debug("PIWIK_URL not configured.")
20     _host = None
21
22
23 @task(ignore_result=True)
24 def track_request(piwik_args):
25     piwik_url = "%s%s%s" % (settings.PIWIK_URL, "/piwik.php?", piwik_args)
26     conn = HTTPConnection(_host)
27     conn.request('GET', piwik_url)
28     conn.close()