New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 659070 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Ensure that any UMA collected during enrollment is pushed through to the server asap.

Project Member Reported by tnagel@chromium.org, Oct 25 2016

Issue description

Especially on enrollment failure where an admin is likely to turn off the device after receiving an error message, we'd like to have UMA pushed to the server immediately.

Iirc, the related  issue 456186  is not a blocker here, since the vast majority of enrollers probably won't turn off UMA manually by un-ticking the box.
 

Comment 1 by tnagel@chromium.org, Oct 25 2016

Cc: igorcov@chromium.org

Comment 2 by tnagel@chromium.org, Oct 25 2016

Blocking: 653814

Comment 3 by tnagel@chromium.org, Oct 25 2016

Cc: -igorcov@chromium.org ljusten@chromium.org
Owner: igorcov@chromium.org
Actually, since Lutz is busy, probably Igor is a better owner.

Comment 4 by tnagel@chromium.org, Oct 25 2016

Description: Show this description

Comment 5 by tnagel@chromium.org, Oct 25 2016

Labels: -Pri-1 Pri-0
UMA should be cached and submitted eventually. Why can't we wait until the device gets online again in case UMA doesn't manage to upload metrics to the server right after enrollment?

Comment 7 by tnagel@chromium.org, Oct 25 2016

Devices that fail enrollment are likely to be shut down and shelved, especially in case of an error that is known to the enrollers to be fatal.  In that case UMA is never uploaded and what we see on the dashboards is biased towards good cases.
OK, makes sense. Do we have a clean way to wait for UMA upload as part of the enrollment flow?

Comment 9 by tnagel@chromium.org, Oct 25 2016

Cc: asvitk...@chromium.org
Alexei, from a somewhat naive look at metrics_service.cc it seems that the following would fulfill our needs:

* Add a way to manually trigger MetricsService::StartInitTask() once the user
  has entered the enrollment screen, bypassing the usual delay of 30 seconds
  (kInitializationDelaySeconds).
* Expose MetricsReportingScheduler::TriggerUpload() to be callable externally
  and call it after enrollment has completed.
* Add a callback parameter to TriggerUpload() for notification when upload
  has completed so that the "enrollment success" screen can be shown.
  (Probably we'd time out after 10-20 seconds and show the "enrollment
  success" screen anyways.)

Does that make sense or would you suggest a different approach?
Components: Internals>Metrics
tnagel: Those code changes makes sense to me. Happy to review the code.
Status: Started (was: Assigned)
Components: -Enterprise
Blocking: -653814
Labels: -Pri-0 Pri-3
Since we can't upload stats blindly when we don't have policy data, and that's one case of enrollment failure, then the data will be biased regardless.

One possibility to implement this would be to upload only in cases when we have policy data. Currently I think it would not help much in correcting the data. Lowering the priority to P3.
Status: Assigned (was: Started)

Sign in to add a comment