OfficeDev / script-lab

Create, run and share your code directly from Office
MIT License
709 stars 163 forks source link

Telemetry #27

Closed nico-bellante closed 8 months ago

nico-bellante commented 6 years ago

Hook up basic initial telemetry

nico-bellante commented 6 years ago

Further investigate: https://github.com/anastasiia-zolochevska/react-appinsights

First impressions: ✔️ free routing telemetry, ❌ don't feel like having to go through each component to extend from their special component

I think that telemetry for redux would probably be the best for us..

gergzk commented 6 years ago

I think there are classes of telemetry:

  1. Basic usage stats. These might not even come from the ScriptLab codebase, but could come from the Agave/SDX harness telemetry in the host app (installed, opened, durations, …)
  2. Advanced host-based usage stats. Maybe like what APIs people are calling from what Agave/SDX, so we could do things like "what APIs are people trying out in ScriptLab"
  3. Basic diagnostics. If there's an unhandled error in ScriptLab, do we know about it? Can we capture that and use that to address bugs? Or do we rely on field reports for bugs?
  4. Advanced internal usage stats. What features do people use? How does it perform? Etc.

For each of these they may be must, nice-to-have, or don't care. In other words, this item may need to break into 2-3 items (maybe one for each of must/nice)

Zlatkovsky commented 6 years ago

Agreed. This is more of a placeholder issue to track the fact that we will need telemetry.

The reason I put it as "1.5 - Soon after release" is that currently we needed to disable all of Script Lab app-collected telemetry for GDPR reasons (and since there was no one looking at that telemetry, it was easier to just disable it rather than make it compliant). We still have the OMEX telemetry, but none of our own. As such, to the extent that "1.1 - Replacement of today's Script Lab" means that everything has to be same or better, no telemetry in the new IDE meets the same bar as no telemetry in the existing Script Lab codebase.

But we should definitely focus on this soon after the initial release, and break it down into the constituent tasks.

gergzk commented 6 years ago

This work must conform to these 5 items: https://office.visualstudio.com/OC/_workitems/edit/2694299 https://office.visualstudio.com/OC/_workitems/edit/2694298 https://office.visualstudio.com/OC/_workitems/edit/2694300 https://office.visualstudio.com/OC/_workitems/edit/2694296 https://office.visualstudio.com/OC/_workitems/edit/2694297

The TL;DR is that we must be careful that anything we collect is not personal data or pii, that we've tagged our Kusto tables/columns appropriately for GDPR (see last).

We will need to close all of the above before this can be closed.

Zlatkovsky commented 6 years ago

Note: when we do this work, would also be good to hook up telemetry to the ribbon button events, to see how often people click them (incl. tutorial, reference docs, etc.)

Zlatkovsky commented 5 years ago

Waiting till Geoffrey checks in a fix to make it easier for us to consume otel.js

Zlatkovsky commented 5 years ago

Note: will also need to complete https://office.visualstudio.com/DefaultCollection/OC/OEP/_workitems/edit/2694295 before we're done.

Zlatkovsky commented 5 years ago

This is no longer blocked. Just needs the ~2 days of work (plus making sure we do the privacy assessment, etc.). Shelved work is on my desktop computer, and I added notes to our OneNote for what we need to restart this work.