Why is there no data in the console?
Why is there no data in the console?
Check the following in order:
- Confirm that main-process
init()returnstrue, and check the main-process console for configuration errors. - Confirm that
applicationId,clientToken, andserviceare non-empty strings. - Confirm that the application can reach
https://browser.flashcat.cloud/api/v2/rumor your self-hosted endpoint. - Wait for one upload cycle. Regular RUM events upload every 10 seconds by default.
- Filter with
source:electron OR container.source:electronin the Explorer.
batchSize: 'SMALL' and uploadFrequency: 'FREQUENT' to shorten the wait.Why do I only see main-process data?
Why do I only see main-process data?
If
source: electron events appear but renderer views, actions, and resources do not, check that:- The renderer installs and initializes
@flashcatcloud/browser-rum. - The main process finishes
init()before creating aBrowserWindow. - For an unbundled main process,
instrumentis imported beforeelectron. - For a bundled main process, the matching Vite, Webpack, or esbuild plugin is configured.
container.source: electron.Why is container.source missing from renderer events?
Why is container.source missing from renderer events?
A missing
container.source means the Browser SDK did not use the Electron bridge and uploaded as a standalone web page.Common causes include:- The main process did not start instrumentation.
- The bundle did not preserve the Electron SDK or its preload.
- SDK initialization failed.
allowedWebViewHosts. Use that option only for third-party pages in a <webview> or BrowserView.Why is Session Replay missing?
Why is Session Replay missing?
Check each requirement:
@flashcatcloud/browser-rumis version 0.0.7 or later.- The renderer sets both
sessionReplaySampleRateandsessionReplayDirectUpload: true. sessionReplaySampleRateis greater than 0 and the current session is sampled.- The page CSP allows
worker-src blob:. - The CSP
connect-srccontains the actual replay upload endpoint. - A self-hosted deployment sets
proxyin the renderer.
Why is part of a replay missing or visually corrupted?
Why is part of a replay missing or visually corrupted?
The renderer uploads replay segments directly and does not use the main-process disk buffer.When the device is truly offline, the Browser SDK places segments in an in-memory queue and retries after connectivity returns. If the device appears online but a request fails because of DNS, a proxy, gateway, security software, or an intake outage, the failed segment is not queued. Later segments may not contain the full snapshot needed to reconstruct the page, causing a gap or visual corruption.Check that:
- Firewalls and endpoint security software allow the upload host.
- DNS and proxy settings can reach the endpoint reliably.
- The page CSP allows the actual replay endpoint.
- Your self-hosted forwarding service remains available.
Why does a self-hosted deployment receive regular events but no replay?
Why does a self-hosted deployment receive regular events but no replay?
Regular RUM events and Session Replay use separate upload paths:
- Regular events are bridged to the main process and use main-process
siteorproxy. - Replay segments upload directly from the renderer and use the renderer Browser SDK
proxy.
proxy in flashcatRum.init() and add it to the page CSP connect-src directive.See Custom upload endpoints for a complete example.Why did a source map upload succeed without restoring the stack?
Why did a source map upload succeed without restoring the stack?
Flashduty matches source maps using
service, version, and the minified file path. Check that:--servicematches the process that produced the error.--release-versionmatches that process’sversion.- The renderer also sets
version; the main-process version does not propagate to renderer events. --minified-path-prefixmatches the directory in the stack frame shown in error details.- Main-process and renderer artifacts were uploaded separately.
app:///dist/renderer/index.js, use /dist/renderer as the prefix. Do not include app:///.See Electron error symbolication for the complete workflow.Why do native crash stacks contain only addresses?
Why do native crash stacks contain only addresses?
Native minidumps do not use JavaScript source maps. Upload Breakpad symbols that match the exact application release, operating system, and CPU architecture.Start with the official symbol bundle for your Electron version. If the application includes native modules or
.node plugins, generate and upload .sym files for those modules as well.After upload, historical crashes can also be symbolicated when viewed. See Symbolicate native crashes.If the issue continues
When you contact support, include:- Electron,
@flashcatcloud/electron-sdk, and@flashcatcloud/browser-rumversions - Bundler and module format
- Main-process initialization options with the Client Token removed
- Main-process and renderer console errors
- Failed request URL, status code, and error type