-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Gather feedback on possible reasons for the add-on failing to trigger a payload send event #26
Comments
There's nothing that immediately stands out. |
@gregglind @raymak In a discussion with @jtg567, we thought that since we are not getting any |
Adding @dzeber to the party! |
I can't explain any whys, but it may be worth adding a few Looking at $ git grep "async" addon/, I only see 7 potential candidates:
|
Hm, one thing I noticed is that https://github.com/motin/esper-pioneer-shield-study/blob/1.0.4/addon/bootstrap.js#L57 is |
FWIW I took a look at how extension tear-down works: each extension runs in its own Honestly not sure if this confirms my theory or not :) Should be pretty easy to test locally, although if GC is involved then it may not be consistent and should be tested over multiple runs. |
@rhelmer Good catch! Issue reported against pioneer-utils. This could definitely affect the sending of endStudy pings. |
Chatted with Rehan, who also believes that b is definitely not the issue and c seems highly unlikely. The only way to understand a better is to do as @pdehaan suggests - more try/catch. Sending of event pings upon caught errors will allow us to get more insight into thrown errors in the wild (ie not detected during QA/development). |
Action plan for a re-launched esper add-on:
|
@mlopatka Looks good enough? |
@motin R+ on the action plan. Lets aim to relaunch (again) in 2 weeks (assuming another pass through QA). |
I've been approaching from the opposite direction, looking into Telemetry data for Pioneers who did and didn't install ESPER, and I've got a lead on the Normandy targeting issue. It looks like ESPER is only getting installed when a profile is on a major release ("59.0") but not when on a dot release ("59.0.3").
Evidence is here, scrolling down to cells 49, 52 and 56. Another issue is that a majority of ESPER enrollees are on prerelease (~90%), and it got installed while they were on version 60.0 (cells 64, 73).
|
Also, it looks like the number of ESPER pings received in the Pioneer pipeline is very close to the number of profiles reporting the ESPER add-on installed in standard Telemetry. This suggests that there is not a significant problem with the add-on sending pings beyond the usual failures. That said, I think the additional instrumentation and validation recommended by @motin is still a great idea. |
@jtg567, based on the findings listed above:
Is there any way to tell if the delivery of ESPER exclusively to majour releases and not dot releases could be a Normandy targetting issue? |
I checked the filter expression for the study. It is this:
At first glance, it looks fine. But there is a subtle and very important problem. Unfortunately these semantics only go so far. On a dot release, The fix is to change the filter expression to use |
I revised the recipe on normandy - not sure why I count more clients with the ESPER addon than @dzeber, though - I'm not yet sure the recipe was the only issue |
@jtg567 FWIW it looks like you're counting subsessions (main_summary rows) rather than client IDs. |
Background:
We are seeing considerably fewer pings ending up in our study's parquet table than expected compared to the Normandy recipe's DAU estimates. Now we are exploring possible sources to this discrepancy.
This issue is created to gather feedback on possible reasons for the add-on failing to trigger a payload send event.
After the add-on is installed by Normandy, the bootstrap.js startup method is the first to fire up.
Possible reasons gathered so far:
a. The add-on yields fatal errors in the lines before the eligibility check, where Pioneer utils is initiated (of such nature that they were not seen during development nor QA)
b. The add-on's double-checking of Normandy's eligibility targets are not in sync with the Normandy recipe used:
(normandy.addons[‘[email protected]’].isActive && normandy.version >= 59.0)
c. Normandy installs does not set the installation reason to one of install or upgrade (https://github.com/motin/esper-pioneer-shield-study/blob/1.0.4/addon/bootstrap.js#L62)
@pdehaan, @rhelmer, @rehandalal: can you spot any other potential reasons, stemming from the add-on implementation / pioneer-utils usage etc?
The text was updated successfully, but these errors were encountered: