{ "info": { "author": "Izak Burger, Syslab.com GmbH", "author_email": "isburger@gmail.com", "bugtrack_url": null, "classifiers": [ "Framework :: Plone", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7" ], "description": "Introduction\n============\n\nslc.clicktracker injects tracking javascript into marked pages. That\njavascript then calls back so that we can track which users are viewing\nwhat pages. The basic use case for this is to make sure people in your\norganisation actually read a document before they vote against it in a\nmeeting.\n\nWhy javascript? It introduces no delays in the loading of pages, instead\ndeferring the collection of stats to an aysnchronous process that happens after\nthe page loads. It also ensures that stats are collected from real browsers and\nit is in a sense more accurate, it only registers a payload after the page was\nsuccessfully rendered client side. It is of course easy to avoid being logged,\nbut the idea is to check for positive evidence, people who did read it.\n\nPluggable storage layer\n=======================\n\nThe storage layer is designed to be pluggable. To implement a storage you need\nto implement the IClickStorage interface. This basically requires the\nimplementation of two methods, logAccess (which puts data into the storage) and\ngetLog (which retrieves data from the storage). The storage layer is registered as\na utility using ZCML.\n\nThis product comes with an existing storage component that uses Postgresql. The\nthinking behind this implementation is to avoid zodb bloat caused by frequent\nwrites.\n\nDisabling tracking on content\n=============================\n\nTo disable tracking for a view, mark the request with IContentIsIgnored early\non during the request, before any content is generated.\n\nConfiguration\n=============\n\nThe postgresl configuration is stored in the plone registry. There is a\nconfiglet in the plone control panel (Site Setup) where you can set the DSN\nfor connecting to the database server. The format of the DSN is as described in\nthe psycopg2 manual at http://initd.org/psycopg/docs/.\n\nDatabase initialisation\n=======================\n\nAfter creating a new database for tracking purposes, you need to activate the\nplpgsql language for this database. You should then load sql/db.sql into your\nnewly created database. This contains all the table definitions and the stored\nprocedure that does the actual work. For ease of use, there is also a\nGenericSetup step to automate this. An example is provided below.\n\nExample Postgresql Configuration\n================================\n\nUsers of other databases often have some trouble understanding Postgresql's\nauthentication. Here is a simple step-by-step guide to configure\nslc.clicktracker for a standard (as it ships for Debian based Linux\ndistributions) postgresql installation.\n\n0. You need to install postgresql if you haven't done so yet. You will also\nneed the development headers. To do this on a Debian/Ubuntu machine type:\n\n sudo apt-get install postgresql libpq-dev\n\n1. Become the postgresql user:\n\n sudo -u postgres -i\n\n2. Log into the template1 database:\n\n psql template1\n\n3. Create a user and a tracking database. The user needs to have the same name\nas the system user running zope. Here is an example session for a user named\nzope:\n\n template1=# create user zope;\n CREATE ROLE\n template1=# create database tracking owner zope;\n CREATE DATABASE\n template1=# \\q\n\n4. Install the plpgsql language into your database\n\n createlang plpgsql tracking\n\n5. In your plone site, go to Site Setup, ClickTracker Setings, then configure\nslc.clicktracker with the DSN:\n\n dbname=tracking\n\n6. Now go to portal_setup, click the Import tab, then choose \"slc.clicktracker\ndatabase setup\" from the dropdown, and import all steps.\n\nThat's it. The mentioned default installation of Postgresql uses \"ident\"\nauthentication, which means there is no need to specify a user name and\npassword, all it needs is the name of the database.\n\nNB: Please note that the above won't work if postgresql is installed on a host\nother than localhost, if you run a distribution where postgresql is not set up\nto do ident authentication be default, or if you're running Windows. In that\ncase, please consult the postgresql documentation for details on the\npg_hba.conf file, and the psycopg2 documentation for details on the dsn.\n\nChangelog\n=========\n\n0.4 (2016-09-29)\n----------------\n\nBug fixes:\n\n- Make the clicktracker-callback callable on any context.\n [ale-rt]\n\n\n0.3 (2012-03-26)\n----------------\n\n- Bugfix in MANIFEST.in [jcbrand]\n\n\n0.2 (2012-03-23)\n----------------\n\n- Add MANIFEST.in [jcbrand]\n\n\n0.1 (2012-03-22)\n----------------\n\n- Initial release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/syslabcom/slc.clicktracker", "keywords": "CMFEditions flexbox", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "slc.clicktracker", "package_url": "https://pypi.org/project/slc.clicktracker/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/slc.clicktracker/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/syslabcom/slc.clicktracker" }, "release_url": "https://pypi.org/project/slc.clicktracker/0.4/", "requires_dist": null, "requires_python": null, "summary": "Track user movements on your plone site.", "version": "0.4" }, "last_serial": 2370408, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "71ae7da7ea0efeb419d4ce70b232f913", "sha256": "42adeb808c5659f2b47e6d8a2d50ca23ce641889b22584fce911ac35d33bcc6c" }, "downloads": -1, "filename": "slc.clicktracker-0.1.tar.gz", "has_sig": false, "md5_digest": "71ae7da7ea0efeb419d4ce70b232f913", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6712, "upload_time": "2012-03-22T14:01:41", "url": "https://files.pythonhosted.org/packages/64/3d/32fc5a4cb2206a5b13478bb8f53cfb06dd256ace273999954d217ae09087/slc.clicktracker-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "df78112c3b3d80bcdfae148101599d5c", "sha256": "106ed07dc82fbe37d955ba488f08c1fa372272a04cdd77041db609ffb26d1b5e" }, "downloads": -1, "filename": "slc.clicktracker-0.2.zip", "has_sig": false, "md5_digest": "df78112c3b3d80bcdfae148101599d5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15727, "upload_time": "2012-03-23T12:53:52", "url": "https://files.pythonhosted.org/packages/35/e7/9194f963bb4c6a7e2ec2d6b0fbfd9680830560b341c982c79a942099984a/slc.clicktracker-0.2.zip" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "fa99b2c6cb908fb3e0ab5c0e366fef8d", "sha256": "c675a935f63f9b9261337abf723fc0a0115dcee0afb77e2cea3d81a0d0148753" }, "downloads": -1, "filename": "slc.clicktracker-0.3.tar.gz", "has_sig": false, "md5_digest": "fa99b2c6cb908fb3e0ab5c0e366fef8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10055, "upload_time": "2012-03-26T11:26:05", "url": "https://files.pythonhosted.org/packages/54/6a/29385de201f3ba3bdb828e0669695c137f5f492a09269d7d1168cfa97d08/slc.clicktracker-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "935e59074a628dad759f4ec61086d067", "sha256": "56692c91291849b798e23e602ab58676c2f5270b8b8af14b9c1d77f08b563af7" }, "downloads": -1, "filename": "slc.clicktracker-0.4.tar.gz", "has_sig": false, "md5_digest": "935e59074a628dad759f4ec61086d067", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12147, "upload_time": "2016-09-29T07:04:07", "url": "https://files.pythonhosted.org/packages/08/2f/a6ff60dac4b51d50dc803831bd4e8c7a0cd79a3fb864447c88755fafadb8/slc.clicktracker-0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "935e59074a628dad759f4ec61086d067", "sha256": "56692c91291849b798e23e602ab58676c2f5270b8b8af14b9c1d77f08b563af7" }, "downloads": -1, "filename": "slc.clicktracker-0.4.tar.gz", "has_sig": false, "md5_digest": "935e59074a628dad759f4ec61086d067", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12147, "upload_time": "2016-09-29T07:04:07", "url": "https://files.pythonhosted.org/packages/08/2f/a6ff60dac4b51d50dc803831bd4e8c7a0cd79a3fb864447c88755fafadb8/slc.clicktracker-0.4.tar.gz" } ] }