Closed Bug 1220171 Opened 6 years ago Closed 1 year ago

Upload telemetry payloads in Java

Categories

(Firefox for Android Graveyard :: Metrics, defect)

All
Android
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: rnewman, Unassigned)

References

Details

We'd like to be able to upload telemetry payloads from an Android service.

This will allow us to create and send payloads entirely outside of Gecko, including while Firefox is in the background or from activities that don't use Gecko (like the search activity).

It will also make it easier to schedule uploads around Android network and power events.

The first step is to replace the existing uploader with one written in Java, and flip whatever build flag we need to flip to stop shipping Gecko's.

The existing MozStumbler and FHR code can be used as an inspiration.
Blocks: ut-android
This is where all pings get submitted to the current Telemetry uploader:
https://dxr.mozilla.org/mozilla-central/rev/b41b92c09fcf94d077a54297aea1dc675b161a9d/toolkit/components/telemetry/TelemetrySend.jsm#692

We could just have different behavior there for Android, e.g.
* always directly saving straight to disk or
* messaging the ping data to Java

The bigger open issue is how to adopt the xpcshell tests then.
We could leave the JS uploader on for xpcshell or stub out a simple uploader service mimicking the Java parts?
I would expect the Android uploader to have its own tests, so probably there are some tests we should turn off. Shipping the uploader only for tests isn't easy, and of course wouldn't actually exercise the real code on this platform.

If we really need to trigger uploads from Gecko and wait on a promise for the work to be done -- for tests or otherwise -- then we could make that happen.
Assignee: nobody → ally
Ally, are you still working on this?
Flags: needinfo?(ally)
nope!
Assignee: a.m.naaktgeboren → nobody
Flags: needinfo?(a.m.naaktgeboren)
Duplicate of this bug: 1185586
Blocks: 1251639
No longer blocks: ut-android
Component: Core → Metrics
Product: Android Background Services → Firefox for Android
We have completed our launch of our new Firefox on Android. The development of the new versions use GitHub for issue tracking. If the bug report still reproduces in a current version of [Firefox on Android nightly](https://play.google.com/store/apps/details?id=org.mozilla.fenix) an issue can be reported at the [Fenix GitHub project](https://github.com/mozilla-mobile/fenix/). If you want to discuss your report please use [Mozilla's chat](https://wiki.mozilla.org/Matrix#Connect_to_Matrix) server https://chat.mozilla.org and join the [#fenix](https://chat.mozilla.org/#/room/#fenix:mozilla.org) channel.
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → INCOMPLETE
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.