-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
Feature Request: Create a programatic way to prevent source collection #1069
Comments
Thanks for submitting this issue @issacgerges |
A UI event (like a button click) is sent from the main thread to the renderer thread, which isn't acknowledged (or handled) for 15s. It's most often caused by synchronous javascript running for that long. In Google Chrome it bubbles to the user in a message that looks something like this, other Chromium embedders handle it in different ways A very recent browser api, currently in Origin Trial, adds the ability to collect callstacks when this error happens. So after 15s of an unacknowledged input event, the stack is sampled. We're trialing this API and it's pointing to the following culprit fingerprintjs/src/sources/fonts.ts Lines 139 to 143 in 3e845ab
Too early to say what percentage of users this is, but I can say this is the highest culprit we've detected. A few things to keep in mind
You likely could improve this by adding a yield back to the browser, but that said, we do not use this part of the fingerprint, and this represents a sizable amount of work for the layout engine. I'd really rather not collect it (an other unused parts) at all. |
Thanks! |
Perfect, do you agree this is a safe place to add these items? fingerprintjs/src/sources/index.ts Lines 123 to 125 in 3e845ab
Alternatively could
|
@issacgerges can you please link to this Crash Reporting API? I'm not sure if what I'm finding is what you're using, thanks. |
Thanks, we've added this to our internal roadmap tracking tool |
The 3rd argument here is the list of entropy sources to exclude. You can modify the FingerprintJS source code to add a source name there, or you can create a |
Scenario
Through the experimental Crash Reporting API, we've been able to identify that the font source can cause "unresponsive" events. We're currently excluding this data before calling
hashComponents
, and would like to prevent it from being collected at all.At the moment it seems one way to do this is to manually
delete
items off the exportedsources
field, although its unclear if this is supported/safe.Alternatively we could patch the package and add an array of excludes here.
Really just curious if this could be supported API
What device and browser are you using?
Chromium
What version of FingerprintJS are you using? (Bug reports not applicable to FingerprintJS master are subject to be closed without comment.)
3.3.3
The text was updated successfully, but these errors were encountered: