Closed Bug 1058104 Opened 10 years ago Closed 10 years ago

Add in analytics tracking for the difference between packaged and hosted

Categories

(Marketplace Graveyard :: Consumer Pages, defect, P2)

2014-Q3
x86
macOS
defect

Tracking

(Not tracked)

RESOLVED FIXED
2014-09-30

People

(Reporter: andy+bugzilla, Assigned: scolville)

References

Details

(Whiteboard: [qa-])

We'd like to be able to track how many people are using the fully packaged app in metrics. If we can determine that value in the app, can we please add it in our pings to google analytics?
Blocks: 1067532
I think this is just a matter of sending a value in app.html, as opposed to yulelog/index.html. We should send as much information as we can, do we have a version or tag to send back as well. Which begs the question, do we have that?
Assignee: nobody → scolville
Flags: needinfo?(dbialer)
Sorry need info'ing dbialer in case there's a special variable to put this information in since he's the GA expert.
In your console you can run

    require('settings').package_version

to get the package version (if packaged). That gets set by the `make` command:

    https://github.com/mozilla/fireplace/blob/bf4f0cc7f/Makefile#L44
    https://github.com/mozilla/fireplace/blob/bf4f0cc7f/src/media/js/settings_package_prod.js

If you search for ":debug" we also show the `package_version` value there.
I think we need to set a custom variable.  I think the next available custom variable is 15.  https://docs.google.com/a/mozilla.com/spreadsheet/ccc?key=0AqvoOaUZL-jwdDNnZ3Z1X1FFbWhFRHhZdEFSY0dLcVE&usp=drive_web#gid=8

I don't know the Universal Analytics method but in GA you would do this
Set Version on Load:

_gaq.push(['_setCustomVar',
index = 15,
name = 'PackageVersion',
value = xx,
opt_scope = 2]);  (Defines this is a session level variable)

https://developers.google.com/analytics/devguides/collection/gajs/gaTrackingCustomVariables

Gareth is the expert and included him here.
Flags: needinfo?(dbialer) → needinfo?(garethcull.bugs)
Hey David,

You can view all of our Custom Dimensions in the GA Admin, under Property > Custom Definitions > Custom Dimensions. Slot 15 is open and I have activated it for you.

I believe you'll want to pass this on the app view page with the other Custom Dimensions that are being passed there.

ga('send', 'pageview', {
  'dimension15':  AppType // where AppType is Packaged App or Hosted App
});
Flags: needinfo?(garethcull.bugs)
David - are we tracking the version to resolve this bug or the type? (see gareth's comment above (comment 5)) 

The PR adds tracking for the version as per your comment (comment 4) and looks to match what's being done for tarako in bug 1008382 (Albeit they're using a different dimension there though).
Flags: needinfo?(dbialer)
Version would be more useful and consistent with Tarako.  Using version, can we distinguish between Tarako packages and Fireplace packages?  Also, could we set something like version 0 for website?
Flags: needinfo?(dbialer)
Status: NEW → ASSIGNED
Target Milestone: --- → 2014-09-30
(In reply to David Bialer [:dbialer] from comment #8)
> Version would be more useful and consistent with Tarako.  Using version, can
> we distinguish between Tarako packages and Fireplace packages?  Also, could
> we set something like version 0 for website?

Yep - I've updated the code to set dimension15 to 0 when there's no package version.
https://github.com/mozilla/fireplace/commit/540a85eacb4dfc30a2dd58f88d490275f62c75f8
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Whiteboard: [qa-]
Since I've been discussing this in other channels with Mat and Gareth and David, may as well resolve all things here.

If dimension15 is going to be used for package version (or 0 if hosted) and can therefore be used to discern between packaged and hosted, that same dimension is fine for Tarako (which is only packaged, and is setting a build-id in dimension15 currently).

Since Tarako is identified by OS/Browser/BrowserVersion, dimension15 is useful and meaningful for us there as well -- but it's not how we identify Tarako.

So what I'd like to know is if it's OK to keep using dimension15 for Tarako, since it's effectively the same thing.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Flags: needinfo?(dbialer)
I spoke to David B and we should use 15 for this and Tarako.
Status: REOPENED → RESOLVED
Closed: 10 years ago10 years ago
Flags: needinfo?(dbialer)
Resolution: --- → FIXED
We did a test today with Gareth where we searched for values of custom dimension 15 [https://www.google.com/analytics/web/?hl=en#my-reports/UsLv-lLXSPaQEpiOQyHwzA/a36116321w65336229p74912330/%3F_u.date00%3D20140901%26_u.date01%3D20141002/] and found nothing but zeroes. This was after verifying the View (marketplace-dev) was responding correctly. This means that, though the code looks correct (and straightforward), something is not right.

If anyone wants to install the package from marketplace-dev.allizom.org on a Flame and prove me wrong, I heartily support it.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(In reply to David Durst [:ddurst] from comment #13)
> We did a test today with Gareth where we searched for values of custom
> dimension 15
> [https://www.google.com/analytics/web/?hl=en#my-reports/UsLv-
> lLXSPaQEpiOQyHwzA/a36116321w65336229p74912330/%3F_u.date00%3D20140901%26_u.
> date01%3D20141002/] and found nothing but zeroes. This was after verifying
> the View (marketplace-dev) was responding correctly. This means that, though
> the code looks correct (and straightforward), something is not right.
> 
> If anyone wants to install the package from marketplace-dev.allizom.org on a
> Flame and prove me wrong, I heartily support it.

When testing this was package version set under :debug?
Flags: needinfo?(ddurst)
Indeed, it is not set, and ngoke confirmed that what I was testing was in fact the packaged iframe (so, no value expected).

Will test on a build of the real packaged app.
Flags: needinfo?(ddurst)
(In reply to David Durst [:ddurst] from comment #15)
> Indeed, it is not set, and ngoke confirmed that what I was testing was in
> fact the packaged iframe (so, no value expected).
> 
> Will test on a build of the real packaged app.


OK, I'll mark this as fixed again, and let you re-verify.
Status: REOPENED → RESOLVED
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
Verified as working in tarako packaged app, so I expect this to remain (as it was) fixed.
You need to log in before you can comment on or make changes to this bug.