Commit Graph

178 Commits

Author SHA1 Message Date
Sarina Canelake
e53b9c83d9 Use Django 1.4 @ensure_csrf_cookie method PLAT-664 2015-06-06 08:48:36 -04:00
Gabe Mulley
63b0378520 Ensure GA events have a course label if available 2015-05-18 13:25:12 -04:00
Ned Batchelder
78e9445aa1 Add super() calls to setUp/tearDown that are missing them
Also, I replaced a number of tearDown methods with addCleanup instead.
And also remove some unneeded patch.stopall() calls.
2015-05-14 18:14:21 -04:00
Diana Huang
362c632ad7 Catch BSON errors as well as PyMongo errors when emitting
MongoDB events.

TNL-2035
2015-05-13 12:21:53 -04:00
Gabe Mulley
4a8b0c5ef5 Make user_track use eventtracking 2015-05-06 20:57:46 -04:00
Ned Batchelder
777be12ada Add missing __init__.py files 2015-04-30 07:43:08 -04:00
Ned Batchelder
7d799e34f3 Remove unused imports 2015-03-17 07:10:31 -04:00
christopher lee
bb5fbda873 MA-272 Updated analytics shim for mobile video events
Shim has been updated to handle currents builds of the android and iOS
apps which are not returning the correct semantics/events. Shim now
includes the seek event.
2015-03-09 15:01:30 -04:00
Piotr Mitros
cf719a40ba Add referer and accept_language to tracking logs
3 line patch, together with a world of pain due to buggy code, broken abstractions in tests, etc.
2015-02-11 13:35:27 -05:00
Nimisha Asthagiri
ad7a67da2b Update segment.io shim for mobile event syntax change. 2014-12-19 12:39:39 -05:00
Nimisha Asthagiri
a6003991a5 MA-157 Mobile analytics end-to-end.
Move app-generated context back into properties.
Ignore BI events through segment's webhook.
Ignore events without Data in Properties.
2014-12-09 18:44:06 -05:00
stv
4d30aedf4e Fix PEP8: E127 continuation line over-indented
for visual indent
2014-11-24 20:46:50 -05:00
Nimisha Asthagiri
07d50ba7a1 MA-90 Update Analytics Shim to match new mobile requirements. 2014-11-13 18:18:57 -05:00
stv
1164624fbc Fix PEP8: W291 trailing whitespace 2014-11-10 19:31:09 -08:00
Gabe Mulley
821c97fbb4 Implement shim for mobile video events.
This PR addresses the following issues:

1) All requests return a 200 OK unless there is an authorization failure. This is deliberate in case the secret key is compromised.
2) Push all of the nasty logic necessary to generate compatible video events into the LMS instead of trying to do that mapping on the mobile devices.
3) Stop using the deprecated "action" field in the segment.io event. According to their support team this field should not be used anymore and is just around for backwards compatibility reasons.

Fixes: AN-3818
2014-11-03 14:12:07 -05:00
Ben Patterson
3ef0653711 pylint cleanup. 2014-10-11 12:51:20 -04:00
Gabe Mulley
5643101ad1 Small changes to the segment.io event handler 2014-10-09 13:25:20 -04:00
Brian Wilson
0eb190fc61 Add _get_request_value to safely access request.REQUEST for browser events. 2014-10-03 11:45:08 -04:00
Gabe Mulley
7900e8d346 Add event tracking endpoint to be called by segment.io 2014-09-09 07:25:54 -04:00
Renzo Lucioni
79461722de Re-use GA cookie when sending server-side events to Segment.io 2014-08-21 10:47:35 -04:00
Gabe Mulley
f7eb7df5c5 Remove duplicated data from legacy events
When event-tracking was fully integrated into the platform, some data was replicated in the context in the middleware and then later extracted and moved the old location by event-tracking. The legacy code path was not updated to remove this transient shim data from the context resulting in duplication of the information. This patch ensures that the transient information is removed from the context before emitting the event.

Fixes: AN-2369
2014-07-25 12:49:55 -04:00
Mat Peterson
4f6088cbd1 Fixed some isinstance errors with opaque-keys 2014-07-11 15:40:08 -04:00
Adam Palay
b584c1a848 skip failing test 2014-06-27 13:24:23 -04:00
Adam Palay
bd2f3c75f5 Explicitly skip tests in common unless we know we're running the LMS unittest suite 2014-06-23 16:28:53 -04:00
brianhw
8801b3a12b Merge pull request #3954 from edx/brian/fix_session_id
Encrypt the session id before writing to tracking logs.
2014-06-09 14:01:29 -04:00
Brian Wilson
f9f4f1c57a Add additional tests for tracking of sessions. 2014-06-03 13:24:48 -04:00
Brian Wilson
119d7768bf Also use md5 for constructing key for hmac. 2014-06-02 12:31:44 -04:00
Brian Wilson
919b433847 Encrypt the session id before writing to tracking logs. 2014-06-02 11:03:41 -04:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Calen Pennington
155ffe37ca Merge remote-tracking branch 'edx/master' into opaque-keys-merge-master
Conflicts:
	cms/djangoapps/contentstore/views/item.py
	cms/djangoapps/contentstore/views/tests/test_container.py
	cms/djangoapps/contentstore/views/tests/test_tabs.py
	common/lib/xmodule/xmodule/modulestore/mongo/draft.py
	lms/djangoapps/certificates/management/commands/gen_cert_report.py
	lms/djangoapps/certificates/queue.py
	lms/djangoapps/certificates/views.py
	lms/djangoapps/courseware/module_render.py
	lms/djangoapps/courseware/tests/test_module_render.py
	lms/djangoapps/instructor/views/api.py
	lms/djangoapps/instructor/views/instructor_dashboard.py
	lms/djangoapps/instructor/views/legacy.py
	lms/djangoapps/shoppingcart/tests/test_models.py
	lms/djangoapps/verify_student/views.py
2014-05-09 15:29:32 -04:00
Calen Pennington
e2bfcf2a36 Make course ids and usage ids opaque to LMS and Studio [partial commit]
This commit updates common/djangoapps.

These keys are now objects with a limited interface, and the particular
internal representation is managed by the data storage layer (the
modulestore).

For the LMS, there should be no outward-facing changes to the system.
The keys are, for now, a change to internal representation only. For
Studio, the new serialized form of the keys is used in urls, to allow
for further migration in the future.

Co-Author: Andy Armstrong <andya@edx.org>
Co-Author: Christina Roberts <christina@edx.org>
Co-Author: David Baumgold <db@edx.org>
Co-Author: Diana Huang <dkh@edx.org>
Co-Author: Don Mitchell <dmitchell@edx.org>
Co-Author: Julia Hansbrough <julia@edx.org>
Co-Author: Nimisha Asthagiri <nasthagiri@edx.org>
Co-Author: Sarina Canelake <sarina@edx.org>

[LMS-2370]
2014-05-07 12:54:49 -04:00
Gabe Mulley
36269bd5a8 Integrate event-tracking in to the LMS
Support incremental conversion of events from the old API to the new, in order to ensure the new system is working, enrollment events have been modified to make use of the new API.
2014-05-01 14:04:35 -04:00
David Baumgold
f25a7870a5 fix tests 2014-03-11 14:48:03 -04:00
David Baumgold
2f3d2ecac0 Fix undefined references to pytz 2014-03-10 16:19:10 -04:00
Sarina Canelake
e71bbeb1e2 Tests for embargo middleware feature 2014-02-27 09:33:17 -05:00
Calen Pennington
3a7b265c8a Add trailing commas to multiline lists, to prevent string concatenation bugs 2014-02-13 13:12:42 -05:00
Brian Wilson
21a4520b8c Remove output of management command options and args from tracking logs. 2014-01-06 12:53:56 -05:00
Brian Wilson
1aefe2f5bf Define TrackedCommand for use as base class for tracking management commands. Use in create_user command. 2014-01-06 12:43:04 -05:00
Brian Wilson
7e31c95c45 Modify server_track to handle being called without a request. 2014-01-05 22:58:10 -05:00
David Baumgold
f3f4af8087 settings.MITX_FEATURES => settings.FEATURES 2013-12-03 15:34:55 -05:00
David Baumgold
8eff442752 mitxmako => edxmako 2013-12-03 14:15:09 -05:00
Gabe Mulley
4b1974cdbc fix spammy log messages from course_id tracking in CMS 2013-11-18 08:47:54 -05:00
Gabe Mulley
3377cb66c9 emit enrollment event 2013-11-06 15:09:33 -05:00
Gabe Mulley
5aa19c08b5 Revert "emit enrollment event"
This reverts commit 5734cae1c3.
2013-11-06 14:35:28 -05:00
Gabe Mulley
5734cae1c3 emit enrollment event 2013-11-06 08:46:40 -05:00
Gabe Mulley
4f4e58b5f6 add user_id to tracking context
AN-213
2013-10-29 08:18:01 -04:00
Gabe Mulley
d2b03e28fb add course_id to event context 2013-10-17 17:44:01 -04:00
Carlos Andrés Rocha
e0fb94cc55 Cleanup mongodb authentication
Authenticate to the database before getting a reference to the
collection.
2013-10-08 11:26:29 -04:00
Gabe Mulley
761a4dcc97 Make URL patterns to exclude from tracking configurable
* Add unit test coverage for this "exclusion from tracking" logic
* Exclude based on regex match instead of raw string comparison
* Exclude heartbeat requests from tracking
2013-09-13 11:24:51 -04:00
Will Daly
2677598a53 Merge pull request #938 from rocha/mock-mongo-on-event-tracking-tests
Mock mongo event tracking backend during tests
2013-09-12 11:27:22 -07:00