v150 · WebRTC
Logging lifecycle
A diagnostic-logging session is a tiny state machine. startDiagnosticLogging() begins recording and resolves with a UUID; finishDiagnosticLogging() finalises the local log; cancelDiagnosticLogging() throws the captured data away. The buttons below make the real calls — each is enabled only when it's valid to call.
navigator.rtc is not available in this browser.Launch Chrome 150+ with
--enable-blink-features=RTCDiagnosticLogging, or enable
chrome://flags/#enable-experimental-web-platform-features and reload over HTTPS/localhost.
The buttons call the real API and report exactly what it returns.
Idle. Start a logging session.
Current session ID (all the page ever receives — the logs stay in the browser)
—
Call log
(no calls yet)
// Before a call, start capturing WebRTC diagnostics
const sessionId = await navigator.rtc.startDiagnosticLogging();
// e.g. "530b630f-8b8b-41ae-b239-a3692fbb4970"
// When the call ends normally, finalise the local log
await navigator.rtc.finishDiagnosticLogging();
// …or, if nothing useful happened, discard it
await navigator.rtc.cancelDiagnosticLogging();
see also
- Bug-report companion —
allowUpload+ metadata - Capability & policy probe — the full enablement gate
implementation reference
Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗