Add COMPOSITE_TIME metric for geckoview streaming
Categories
(Core :: Graphics, task)
Tracking
()
Tracking | Status | |
---|---|---|
firefox71 | --- | fixed |
People
(Reporter: jnicol, Assigned: jnicol)
References
Details
Attachments
(3 files)
(deleted),
text/plain
|
chutten
:
data-review+
|
Details |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details |
Spin off from bug 1568589 for the graphics-specific probes.
Assignee | ||
Comment 1•5 years ago
|
||
Hi Allesio, following on from my questions in the other bug.
Glean SDK only understands dates. I'm afraid you'll need to do the conversion manually by looking at our release calendar.
In the example in the docs it has 2019-12-09 # Gecko 73
. On the release calendar you linked to, that date correlates to 6 days after 71 is released, and 73 becomes nightly? Is that correct? Some of the probes I'm adding are supposed to expire in gecko 70 and I can't tell what date I'm supposed to use for that.
I've also ran in to a problem trying to add a labeled_counter
probe.
gfx.content.frame_time:
reason:
type: labeled_counter
gecko_datapoint: CONTENT_FRAME_TIME_REASON
description: The reason that CONTENT_FRAME_TIME recorded a slow (>200) result, if any.
labels:
- on_time
- no_vsync
- missed_composite
- slow_composite
- missed_composite_mid
- missed_composite_long
- missed_composite_low
- no_vsync_no_id
bugs:
- 1510853
data_reviews:
- https://example.com/data-review-url-example
notification_emails:
- gfx-telemetry-alerts@mozilla.com
- mwoodrow@mozilla.com
expires: 2019-12-09 # Gecko 73
glean_parser gives the following output:
/home/jamie/src/gecko/toolkit/components/telemetry/geckoview/streaming/metrics.yaml:
```
gfx.content.frame_time:
reason:
gecko_datapoint: CONTENT_FRAME_TIME_REASON
```
'CONTENT_FRAME_TIME_REASON' is too long
It does this no matter how short I make the value of gecko_datapoint
. I only hit this error for type: labelled_counter
, and if I change the type to something else it works fine.
Comment 2•5 years ago
|
||
(In reply to Jamie Nicol [:jnicol] from comment #1)
Hi Allesio, following on from my questions in the other bug.
Glean SDK only understands dates. I'm afraid you'll need to do the conversion manually by looking at our release calendar.
In the example in the docs it has
2019-12-09 # Gecko 73
. On the release calendar you linked to, that date correlates to 6 days after 71 is released, and 73 becomes nightly? Is that correct? Some of the probes I'm adding are supposed to expire in gecko 70 and I can't tell what date I'm supposed to use for that.
I think the dates were moved a bit in the calendar, that's why there's a mismatch :). For this specific case, I'd use the day Firefox 70 becomes release, 2019-10-21.
@Chris, I quickly checked the codebase, and I think we're not checking for expired histograms in Gecko when when doing streaming telemetry. That's probably correct. However, by reading the above, this sounds a bit confusing. What do you think? Maybe we should keep the check in both places: Gecko engineers really care about their metrics expiring in the version they say. That would make the expiration date for the metrics.yaml file redundant, more of an indication.
I've also ran in to a problem trying to add a
labeled_counter
probe.
You are trying to implement the only histogram type we don't support yet :P This mechanism does not support categorical histograms yet. That will be available as part of bug 1571740.
Updated•5 years ago
|
Comment 3•5 years ago
|
||
For a moment there I almost scared myself. Since the Histogram
instance gExpiredHistogram
is given the id of the first expired histogram someone tries to use, I was thinking that if the first expired histogram was GV Streaming-supporting, then we'd start streaming all samples for all expired histograms over JNI. (And if the order of histogram accumulations is runtime-dependent, which it almost certainly is, this could happen for only some users and cause havoc).
Luckily the original ID is what's used for all the HistogramInfo
checks. (I should investigate whether we should use HistogramCount
or some other invalid id for gExpiredHistogram
's id...)
So it is indeed how you say: the original ID will be of a GV streamer, and though the Histogram
instance in internal_HistogramAdd
is gExpiredHistogram
we won't notice or care if in GV Streaming mode.\
I've filed bug 1580196 to fix the fault in the code.
But back to the case at hand. In the design proposal we encouraged probe owners to only mark for geckoview_streaming
those probes that did not expire. The expiry mechanisms for Gecko and Glean do not line up at all and work in different ways: the only expiry value they agree upon is "never". If a probe's needed that currently does expire, and you will make it not expire, please mention in the Data Collection Review that you're making it permanent.
Updated•5 years ago
|
Assignee | ||
Comment 4•5 years ago
|
||
Hi Chris, so to clarify: if we have a current probe in Histograms.json which is due to expire, and we want to collect it from Fenix also, then we should set it to never expire in both Histograms.json and metrics.yaml?
Comment 5•5 years ago
|
||
It would save us from mismatches, yes... but it does impose additional complications for the probe owners. Regression tests, ongoing monitoring... It might be that the correct solution would be to not include the probe in the list of ones we wish to report via this mechanism. I can't make that choice for the probe owners, though.
Ultimately there is nothing wrong with having mismatched expiry values: whichever one happens first will stop collection. It might be unexpected, which is why I encouraged the inclusion only of never-expiring probes.
I recommend splitting off the expiring probes to their own bug where we can ni? the probe owners to inform them of what's going on. While that's happening we can proceed in this bug with the probes that we know won't be confusing, so we can get some of these landed sooner. Sound like a plan?
Assignee | ||
Comment 6•5 years ago
|
||
Here's my data review. Please let me know if I've filled it out wrong, first time doing one!
Just for COMPOSITE_TIME initially, as it is a simple probe which is already set to never expire. Once I've got this past review and landed I'll do the others.
Comment 7•5 years ago
|
||
Comment on attachment 9094153 [details] data review for COMPOSITE_TIME PRELIMINARY NOTES: To be complete, the Data Review Request should list the Glean metric name in addition to the Telemetry histogram name in this review to be clear about what it's called at recording time (the Telemetry probe name) and what it's called at reporting time (the Glean metric name). In this case it's enough for me that an interested person in the future who finds this review will be able to link things manually using the `gecko_datapoint` in the `metrics.yaml`, but it'd be nice for future ones to have both names. And also, though it's not required in any way for Data Review, I sometimes peek at the definitions files being changed to make sure that any of the historical Telemetry footguns aren't catching you. For the future Data Reviews I wouldn't mind if the data review request came after the definitions files changes were up for review. DATA COLLECTION REVIEW RESPONSE: Is there or will there be documentation that describes the schema for the ultimate data set available publicly, complete and accurate? Yes. This collection is Telemetry so is documented in its definitions file [Histograms.json](https://hg.mozilla.org/mozilla-central/file/tip/toolkit/components/telemetry/Histograms.json) and the [Probe Dictionary](https://telemetry.mozilla.org/probe-dictionary/). The Glean part of this is documented in its definitions file [metrics.yaml](https://hg.mozilla.org/mozilla-central/file/tip/toolkit/components/telemetry/geckoview/streaming/metrics.yaml) Is there a control mechanism that allows the user to turn the data collection on and off? Yes. This collection is Telemetry so can be controlled through Firefox Preview's Data Collection Settings. If the request is for permanent data collection, is there someone who will monitor the data over time? Yes, Jamie Nicol is responsible. Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under? Category 1, Technical. Is the data collection request for default-on or default-off? Default on for all channels, across all products currently embedding geckoview in a streaming configuration (&browser and Firefox Preview so far) Does the instrumentation include the addition of any new identifiers? No. Is the data collection covered by the existing Firefox privacy notice? Yes. Does there need to be a check-in in the future to determine whether to renew the data? No. This collection is permanent. --- Result: datareview+ ni?dexter - will metrics in gecko's metrics.yaml have generated documentation via `glean_parser`? If so, would you know where that lives?
Comment 8•5 years ago
|
||
(In reply to Chris H-C :chutten from comment #7)
ni?dexter - will metrics in gecko's metrics.yaml have generated
documentation viaglean_parser
? If so, would you know where that lives?
Yes, Glean Autodocs will be available for these metrics. They will live in the related engine-gecko-*
consuming package. For example, docs for the GV nightly channel will live here
Assignee | ||
Comment 9•5 years ago
|
||
Thanks for the data review Chris. Apologies about the points in your preliminary notes, I'll make sure I do them next time!
Alessio, I'm still hitting the issue where a-c's engine-gecko-nightly/build/.../GleanGeckoMetricsMapping.kt doesn't pick up the metrics from gecko's metrics.yaml, it only works if I copy it in to a-c's engine-gecko-nightly/.../metrics.yaml also. Even after ./gradlew clean
and rm -rf ~/.gradle/caches
. Are we confident this is just a caching issue and not something I'm missing?
I'll have my patch up for review shortly, just doing one final check it all works (apart from the above issue).
Comment 10•5 years ago
|
||
(In reply to Jamie Nicol [:jnicol] from comment #9)
Alessio, I'm still hitting the issue where a-c's engine-gecko-nightly/build/.../GleanGeckoMetricsMapping.kt doesn't pick up the metrics from gecko's metrics.yaml, it only works if I copy it in to a-c's engine-gecko-nightly/.../metrics.yaml also. Even after
./gradlew clean
andrm -rf ~/.gradle/caches
. Are we confident this is just a caching issue and not something I'm missing?
Yes, but I'm not sure it's caching itself. It's a weird issue that relates to dependency substitution. If copying the metric to engine-gecko-nightly/.../metrics.yaml
allows you to test it, and it works, don't worry. It will do the right thing after this is merged. I will keep an eye on it to make sure :)
Assignee | ||
Comment 11•5 years ago
|
||
Updated•5 years ago
|
Comment 12•5 years ago
|
||
Pushed by jnicol@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/01dd32f2378e Add COMPOSITE_TIME metric for geckoview_streaming telemetry. r=Dexter,chutten
Comment 13•5 years ago
|
||
Backed out changeset 01dd32f2378e (Bug 1580129) for gv-junit failures complaining about testOnTelemetryReceived
Backout link: https://hg.mozilla.org/integration/autoland/rev/22b0c9f685ba100c7b30170de68edd5744e1762b
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=268230593&repo=autoland&lineNumber=9103
[task 2019-09-24T20:32:20.497Z] 20:32:20 INFO - TEST-START | org.mozilla.geckoview.test.TelemetryTest.testOnTelemetryReceived
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: numtests=524
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: stream=
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | Error in testOnTelemetryReceived(org.mozilla.geckoview.test.TelemetryTest):
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | java.lang.AssertionError: Metric name should be correct
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | Expected: [<401L>, <12L>, <1L>, <109L>, <2000L>]
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | but: was [<35L>, <101L>, <63L>, <0L>, <70L>, <0L>, <66L>, <0L>, <45L>, <37L>, <102L>, <74L>, <0L>, <39L>, <35L>, <116L>]
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.Assert.assertThat(Assert.java:956)
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
[task 2019-09-24T20:32:20.598Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.checkThat(GeckoSessionTestRule.java:796)
[task 2019-09-24T20:32:20.599Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.BaseSessionTest.assertThat(BaseSessionTest.kt:74)
[task 2019-09-24T20:32:20.599Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.TelemetryTest$testOnTelemetryReceived$4.onHistogram(TelemetryTest.kt:51)
[task 2019-09-24T20:32:20.599Z] 20:32:20 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2019-09-24T20:32:20.601Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.forCallbacksDuringWait(GeckoSessionTestRule.java:1652)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.waitUntilCalled(GeckoSessionTestRule.java:1467)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.waitUntilCalled(GeckoSessionTestRule.java:1419)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.TelemetryTest.testOnTelemetryReceived(TelemetryTest.kt:46)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule$2.lambda$evaluate$0$GeckoSessionTestRule$2(GeckoSessionTestRule.java:1257)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.-$$Lambda$GeckoSessionTestRule$2$mzZNnl5Bu5F2_4xGxj0DHU4J33I.run(lambda)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.app.Instrumentation$SyncRunnable.run(Instrumentation.java:1950)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.os.Handler.handleCallback(Handler.java:751)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.os.Looper.loop(Looper.java:154)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.app.ActivityThread.main(ActivityThread.java:6077)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test |
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: test=testOnTelemetryReceived
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: class=org.mozilla.geckoview.test.TelemetryTest
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: stack=java.lang.AssertionError: Metric name should be correct
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | Expected: [<401L>, <12L>, <1L>, <109L>, <2000L>]
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | but: was [<35L>, <101L>, <63L>, <0L>, <70L>, <0L>, <66L>, <0L>, <45L>, <37L>, <102L>, <74L>, <0L>, <39L>, <35L>, <116L>]
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.Assert.assertThat(Assert.java:956)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.checkThat(GeckoSessionTestRule.java:796)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.BaseSessionTest.assertThat(BaseSessionTest.kt:74)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.TelemetryTest$testOnTelemetryReceived$4.onHistogram(TelemetryTest.kt:51)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.forCallbacksDuringWait(GeckoSessionTestRule.java:1652)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.waitUntilCalled(GeckoSessionTestRule.java:1467)
[task 2019-09-24T20:32:20.602Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.waitUntilCalled(GeckoSessionTestRule.java:1419)
[task 2019-09-24T20:32:20.603Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.TelemetryTest.testOnTelemetryReceived(TelemetryTest.kt:46)
[task 2019-09-24T20:32:20.603Z] 20:32:20 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2019-09-24T20:32:20.603Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
[task 2019-09-24T20:32:20.603Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
[task 2019-09-24T20:32:20.603Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
[task 2019-09-24T20:32:20.603Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
[task 2019-09-24T20:32:20.604Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule$2.lambda$evaluate$0$GeckoSessionTestRule$2(GeckoSessionTestRule.java:1257)
[task 2019-09-24T20:32:20.604Z] 20:32:20 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.-$$Lambda$GeckoSessionTestRule$2$mzZNnl5Bu5F2_4xGxj0DHU4J33I.run(lambda)
[task 2019-09-24T20:32:20.604Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.app.Instrumentation$SyncRunnable.run(Instrumentation.java:1950)
[task 2019-09-24T20:32:20.604Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.os.Handler.handleCallback(Handler.java:751)
[task 2019-09-24T20:32:20.605Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2019-09-24T20:32:20.605Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.os.Looper.loop(Looper.java:154)
[task 2019-09-24T20:32:20.605Z] 20:32:20 INFO - org.mozilla.geckoview.test | at android.app.ActivityThread.main(ActivityThread.java:6077)
[task 2019-09-24T20:32:20.605Z] 20:32:20 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2019-09-24T20:32:20.605Z] 20:32:20 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
[task 2019-09-24T20:32:20.606Z] 20:32:20 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
[task 2019-09-24T20:32:20.606Z] 20:32:20 INFO - org.mozilla.geckoview.test |
[task 2019-09-24T20:32:20.606Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: current=429
[task 2019-09-24T20:32:20.606Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS_CODE: -2
[task 2019-09-24T20:32:20.606Z] 20:32:20 WARNING - TEST-UNEXPECTED-FAIL | org.mozilla.geckoview.test.TelemetryTest.testOnTelemetryReceived | status -2
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - TEST-INFO took 104ms
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: numtests=524
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: stream=
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | org.mozilla.geckoview.test.TextInputDelegateTest:
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: test=inputConnection[#input]
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: class=org.mozilla.geckoview.test.TextInputDelegateTest
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: current=430
[task 2019-09-24T20:32:20.607Z] 20:32:20 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS_CODE: 1
Comment 14•5 years ago
|
||
Ah sorry, that's a bad test. I'll attach a fix for that test to this bug soon.
Comment 15•5 years ago
|
||
Right now testOnTelemetryReceived assumes that only the test histograms will
fire during the test. This works because only the test histograms are enabled
for streaming telemetry and will break as soon as some other histogram is
enabled.
Instead of relying on this fact we just wait for the test histogram to fire and
ignore all the other unrelated ones.
Comment 17•5 years ago
|
||
Pushed by jnicol@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e10b4084b513 Handle external metrics in TelemetryTest. r=snorp
Comment 18•5 years ago
|
||
Pushed by jnicol@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6b99299f84d4 Add COMPOSITE_TIME metric for geckoview_streaming telemetry. r=Dexter,chutten
![]() |
||
Comment 19•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e10b4084b513
https://hg.mozilla.org/mozilla-central/rev/6b99299f84d4
Assignee | ||
Updated•5 years ago
|
Description
•