GPUDevice: uncapturederror event
The uncapturederror
event of the GPUDevice
interface is fired when an error is thrown that has not been observed by a GPU error scope, to provide a way to report unexpected errors.
Known error cases should be handled using pushErrorScope()
and popErrorScope()
.
Syntax
Use the event name in methods like addEventListener()
, or set an event handler property.
addEventListener("uncapturederror", (event) => {});
onuncapturederror = (event) => {};
Event type
Examples
You could use something like the following as a global mechanism to pick up any errors that aren't handled by error scopes and capture them.
device.addEventListener("uncapturederror", (event) => {
console.error("A WebGPU error was not captured:", event.error);
reportErrorToServer({
type: event.error.constructor.name,
message: event.error.message,
});
});
See WebGPU Error Handling best practices for more examples and information.
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
uncapturederror_event |
113Currently supported on ChromeOS, macOS, and Windows only.
|
113Currently supported on ChromeOS, macOS, and Windows only.
|
previewCurrently supported on Linux and Windows only.
|
No |
99Currently supported on ChromeOS, macOS, and Windows only.
|
No |
No |
No |
No |
No |
No |
No |
See also