Is there an existing issue for this?
How do you use Sentry?
Sentry Saas (sentry.io)
Which SDK are you using?
@sentry/browser
SDK Version
10.1.0
Framework Version
Vanilla JS, Mapbox GL JS WebGL canvas
Link to Sentry event
No response
Reproduction Example/SDK Setup
Snapshot on render
map.on('render', () => {
const replayIntegration = Sentry.getClient()?.getIntegrationByName('ReplayCanvas');
if (!replayIntegration) return;
replayIntegration.snapshot(map.getCanvas());
});
Snapshot on interval
setInterval(() => takeSentryScreenshot(), 1000);
function takeSentryScreenshot() {
console.log('ask screenshot');
map.once('render', () => {
const replayIntegration = Sentry.getClient()?.getIntegrationByName('ReplayCanvas');
if (!replayIntegration) return;
replayIntegration.snapshot(map.getCanvas());
});
map.triggerRepaint();
}
Steps to Reproduce
Reported via ZD ticket: a user is having trouble using manual snapshots with ReplayCanvas on a WebGL canvas. They've tested two approaches, snapshot on render and snapshot on an interval. The render version results in no visible canvas in the replay, and the interval method results in flickering / missing frames.
Expected Result
Snapshots should capture canvas frames and appear in the replay.
Actual Result
With render: canvas is blank or missing entirely in the replay. With interval: canvas flickers / renders intermittently.
Is there an existing issue for this?
How do you use Sentry?
Sentry Saas (sentry.io)
Which SDK are you using?
@sentry/browser
SDK Version
10.1.0
Framework Version
Vanilla JS, Mapbox GL JS WebGL canvas
Link to Sentry event
No response
Reproduction Example/SDK Setup
Snapshot on render
Snapshot on interval
Steps to Reproduce
Reported via ZD ticket: a user is having trouble using manual snapshots with ReplayCanvas on a WebGL canvas. They've tested two approaches, snapshot on render and snapshot on an interval. The render version results in no visible canvas in the replay, and the interval method results in flickering / missing frames.
Expected Result
Snapshots should capture canvas frames and appear in the replay.
Actual Result
With render: canvas is blank or missing entirely in the replay. With interval: canvas flickers / renders intermittently.