Browse Source

Merge pull request #8072 from ramya-rao-a/doc-update

Clarifying crash reporter behviour in Mac
Kevin Sawicki 8 years ago
parent
commit
4aa2b093ff
1 changed files with 14 additions and 8 deletions
  1. 14 8
      docs/api/crash-reporter.md

+ 14 - 8
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.
-
-**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.
+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 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()`