Issue
Our Sentry project has server-side fingerprint rules defined, and we also want to set an SDK-level fingerprint on certain events. We need to know whether the SDK-level fingerprint and the project-level fingerprint rules merge, or whether one takes precedence over the other.
Applies To
All SaaS Customers and Self-Hosted Users
Issue Grouping / Fingerprinting
Projects with server-side fingerprint rules defined
Projects using SDK-level fingerprinting
Error issues only (performance and replay issues do not support fingerprinting)
Resolution
Server-side fingerprint rules take precedence over SDK-level fingerprinting. They do not merge. When an event matches one of your project's server-side fingerprint rules, Sentry replaces the fingerprint set by the SDK with the fingerprint from the matching rule. When no server-side rule matches the event, Sentry keeps the fingerprint the SDK set.
So, for a given event:
If a server-side rule matches, the server-side rule wins.
If no server-side rule matches, the SDK fingerprint applies.
If you want to refine Sentry's default grouping instead of replacing it, include the {{ default }} variable in the fingerprint array. This works in both SDK fingerprinting and server-side rules, and it folds the normal grouping hash into your custom fingerprint rather than overriding it entirely. Omit {{ default }} to override grouping completely.
For matching syntax and variables, see the Fingerprint Rules documentation and the SDK Fingerprinting documentation.
