diff --git a/docs/api/crash-reporter.md b/docs/api/crash-reporter.md index a8a61025a525..3fc85f94849e 100644 --- a/docs/api/crash-reporter.md +++ b/docs/api/crash-reporter.md @@ -47,14 +47,20 @@ The `crashReporter` module has the following methods: report. Only string properties are sent correctly, Nested objects are not supported. -You are required to call this method before using other `crashReporter` -APIs. +You are required to call this method before using any other `crashReporter` APIs +and in each process (main/renderer) from which you want to collect crash reports. +You can pass different options to `crashReporter.start` when calling from different processes. -**Note:** On macOS, Electron uses a new `crashpad` client, which is different -from `breakpad` on Windows and Linux. To enable the crash collection feature, -you are required to call the `crashReporter.start` API to initialize `crashpad` -in the main process and in each renderer process from which you wish to collect -crash reports. +**Note:** On Windows and Linux, Electron uses `breakpad` for crash collection and reporting. +Crashes can be collected from the main and renderer process, but not from the child processes +created via the `child_process` module. + +**Note:** On macOS, Electron uses a new `crashpad` client for crash collection and reporting. +Crashes can be collected from the main, renderer and any of the child processes created via the `child_process` module. +If you want to enable crash reporting, initializing `crashpad` from the main process using `crashReporter.start` is required +regardless of which process you want to collect crashes from. Once initialized this way, the crashpad handler collects +crashes from all processes. You still have to call `crashReporter.start` from the renderer process, otherwise crashes from +renderer processes will get reported without `companyName`, `productName` or any of the `extra` information. ### `crashReporter.getLastCrashReport()`