Matt Lott
ae1621ea09
Update analytics aggregation to process classrooms
2015-12-13 15:35:53 -08:00
Matt Lott
95b61c2f83
Add recurring revenue to admin analytics page
...
https://app.asana.com/0/54276215890539/59638739614287
2015-11-08 17:00:24 -08:00
Matt Lott
7861faaf93
Add active classes to admin analytics page
...
https://app.asana.com/0/54276215890539/59638739614287
2015-11-06 14:11:39 -08:00
Matt Lott
d445024cb6
Add admin analytics page with MAUs
...
Includes updating analytics insert script used to inject aggregated
data into production database.
2015-11-04 10:59:10 -08:00
Matt Lott
0768b533e2
Subs dashboard perf
...
Caching older (at least 16 days) Stripe invoices in analytics
collection, which will be updated once a day via the analytics server
cron job.
2015-07-31 16:19:40 -07:00
Matt Lott
1f7178bac7
Update analytics log collection index
...
Indexes already updated on live analytics database.
2015-05-02 18:28:47 -07:00
Matt Lott
5305d80887
Add conversion info to admin dashboard
2015-05-01 09:37:47 -07:00
Michael Schmatz
d0908f694c
Log app server analytics event to the new analytics server
...
I never managed to get the res.close event (responses from the server
are 0-length) I feel like this is a bug with Node I should report.
2015-03-02 19:02:28 -05:00
Matt Lott
39d393c52f
🐛 Fix analytics API slugify
2015-02-25 11:39:26 -08:00
Matt Lott
c4620a7b2d
Refactor analytics event logging
...
Clean up property slimming.
Save explicit identity traits in properties.
2015-02-09 15:03:04 -08:00
Matt Lott
20e70c316e
Help usage analytics script
2015-02-04 15:50:17 -08:00
Matt Lott
c842f45786
Update subscribe modal with parent help button
2015-02-04 13:54:38 -08:00
Matt Lott
3d32c8a5e7
Document missing database schema indexes
...
These indexes are on the production database but not set in our
mongoose schemas.
2015-01-27 10:02:51 -08:00
Nick Winter
2a68fa47a0
Fixed bug with subscription purchase analytis for low-traffic levels.
2015-01-23 11:44:15 -08:00
Matt Lott
e49c74259b
Update campaign editor analytics
...
Adding shown and purchased subscription counts.
Locking down analytics to admin-only.
2015-01-21 13:41:38 -08:00
Matt Lott
7fda59ee2d
Update campaign editor analytics
...
Adding help click counts and help videos start counts to level view
analytics.
2015-01-20 10:43:02 -08:00
Matt Lott
d0a0c95623
Update campaign editor analytics
...
Display little level completion line graphs in the level completion
table cells.
2015-01-19 21:59:25 -08:00
Matt Lott
05f028d944
Update campaign editor analytics
...
Adding ‘left game’ counts to overall campaign view. This is the number
of players that left the game after playing the given level.
2015-01-18 16:29:47 -08:00
Matt Lott
e499678223
Add user null check to logEvent
2015-01-15 14:21:30 -08:00
Matt Lott
116c7d0bf2
Update internal analytics
...
Adding level session ID where applicable.
Slimming down fields for most common events.
2015-01-15 11:04:52 -08:00
Matt Lott
c5977c00fe
Add shortened fields to analytics.log.event
...
We’ll remove the old long fields after we’ve got enough data to switch
over our analytics queries without complication.
2015-01-14 17:51:34 -08:00
Matt Lott
e79cadc761
Remove analytics.log.event created field
...
_id field already has created data:
http://docs.mongodb.org/manual/reference/object-id/
Also some misc analytics cleanup.
2015-01-14 13:03:02 -08:00
Matt Lott
3fd5f49220
Analytics data revamp
...
Add analytics per-day aggregation collection.
Add analytics strings collection.
Add per-day aggregation mongo insertion script.
Update campaign editor to use aggregation collection.
Update queries to use _id instead of created field.
2015-01-14 11:09:01 -08:00
Nick Winter
58716f5b75
Revert "Fixed #1076 , and all other instances of empty objects being stripped out of documents. Turns out mongoose was doing this intentionally as a feature? I don't understand why that's on by default. Oh mongoose."
...
Saw that this caused 500s on /auth/whoami with no cookies set, with this error:
debug: 500: MongoError: E11000 duplicate key error index: coco.users.$emailLower_1 dup key: { : null }
Probably we need to be much more careful about what changes this blanket change to the minimize Mongoose option might introduce, since tests didn't catch this, but it would have taken the site down for anyone not logged in already.
This reverts commit 121f07d020
.
2015-01-09 18:30:05 -08:00
Scott Erickson
121f07d020
Fixed #1076 , and all other instances of empty objects being stripped out of documents. Turns out mongoose was doing this intentionally as a feature? I don't understand why that's on by default. Oh mongoose.
2015-01-09 11:56:54 -08:00
Matt Lott
372ac20a67
Update campaign editor analytics
...
Level view recent sessions is latest - 10 minutes.
2015-01-08 17:00:06 -08:00
Matt Lott
bc93a2b181
Update campaign editor analytics
...
Restrict level view completion rates to unique users. Super slow, perf
work to do here.
Increase level view completion rate date range to 2 weeks.
Increase level view average playtimes date range to 2 weeks.
Display player name if available in level view recent sessions.
2015-01-08 16:01:49 -08:00
Matt Lott
c54fea929e
Update campaign editor analytics
...
Optimize analytics.log.event user event data find() to use stream()
instead of exec(), which is better for large result sets
Fix startDay formatting bug
Per-level recent sessions to 100
2015-01-07 14:49:24 -08:00
Matt Lott
d89b0d90e3
Campaign analytics - unique users, dropped count
...
Fixing incorrect dropped counts.
Restricting start/finish level events to unique users.
Does not fix campaign editor level view analytics.
2015-01-06 21:38:49 -08:00
Matt Lott
1c1f2be497
Changing analytics.log.event indexes to compound
...
Changing this back. Using mongodb hint() and explain() on our find()
call indicates the compound index is better than the two single indexes.
2015-01-06 14:54:56 -08:00
Matt Lott
a144c5ff0d
Update analytics.log.event indexes to match prod
...
These were applied as single indexes directly in production.
2015-01-06 14:07:22 -08:00
Matt Lott
7052dd99f5
Add index to analytics.log.event
2015-01-05 10:49:43 -08:00
Matt Lott
61180c640d
Add completion % to campaign analytics
2015-01-05 10:28:56 -08:00
Matt Lott
b5969e0abc
Update campaign analytics level ordering
...
Reading campaign levels from database. Assumes database order is
roughly progression order.
2015-01-02 13:31:50 -08:00
Matt Lott
2d410fa57f
Update editor analytics level completions
...
We have to grab all the level data at once, so we should cache it all
too. Only the first level completions call should be uncached/slow.
2015-01-01 12:26:19 -08:00
Matt Lott
e65887ec79
Add campaign drop-offs analytics to editor
2015-01-01 12:01:51 -08:00
Matt Lott
9b6d327c7f
Add average playtimes to levels in campaign editor
2014-12-31 12:25:18 -08:00
Matt Lott
fcf5346aa3
Add completion rates to levels in campaign editor
2014-12-31 11:49:29 -08:00
Matt Lott
9baef64dd0
Fix double 403 in Handler.get
2014-12-16 21:45:30 -08:00
Matt Lott
c76662c967
Log analytics events internally
2014-12-15 11:45:12 -08:00
Matt Lott
e3abb9ceb3
Capture active user metrics
...
Watching for these events:
Level completed
User registered
Playtime of 30s in a level
Purchase
Payment
Subscribe
Earned an achievement
2014-12-04 12:57:57 -08:00