61 lines
2.3 KiB
Markdown
61 lines
2.3 KiB
Markdown
# crash-reporter
|
|
|
|
An example of automatically submitting crash reporters to remote server:
|
|
|
|
```javascript
|
|
crashReporter = require('crash-reporter');
|
|
crashReporter.start({
|
|
productName: 'YourName',
|
|
companyName: 'YourCompany',
|
|
submitUrl: 'https://your-domain.com/url-to-submit',
|
|
autoSubmit: true
|
|
});
|
|
```
|
|
|
|
## crashReporter.start(options)
|
|
|
|
* `options` Object
|
|
* `productName` String, default: Electron
|
|
* `companyName` String, default: GitHub, Inc
|
|
* `submitUrl` String, default: http://54.249.141.255:1127/post
|
|
* URL that crash reports would be sent to as POST
|
|
* `autoSubmit` Boolean, default: true
|
|
* Send the crash report without user interaction
|
|
* `ignoreSystemCrashHandler` Boolean, default: false
|
|
* `extra` Object
|
|
* An object you can define which content will be send along with the report.
|
|
* Only string properties are send correctly.
|
|
* Nested objects are not supported.
|
|
|
|
Developers are required to call the API before using other crashReporter APIs.
|
|
|
|
|
|
**Note:** On OS X, electron uses a new `crashpad` client, which is different
|
|
with the `breakpad` on Windows and Linux. To enable crash collection feature,
|
|
you are required to call `crashReporter.start` API to initiliaze `crashpad` in
|
|
main process, even you only collect crash report in renderer process.
|
|
|
|
## crashReporter.getLastCrashReport()
|
|
|
|
Returns the date and ID of last crash report, when there was no crash report
|
|
sent or the crash reporter is not started, `null` will be returned.
|
|
|
|
## crashReporter.getUploadedReports()
|
|
|
|
Returns all uploaded crash reports, each report contains date and uploaded ID.
|
|
|
|
# crash-reporter payload
|
|
|
|
The crash reporter will send the following data to the `submitUrl` as `POST`:
|
|
|
|
* `rept` String - e.g. 'electron-crash-service'
|
|
* `ver` String - The version of Electron
|
|
* `platform` String - e.g. 'win32'
|
|
* `process_type` String - e.g. 'renderer'
|
|
* `ptime` Number
|
|
* `_version` String - The version in `package.json`
|
|
* `_productName` String - The product name in the crashReporter `options` object
|
|
* `prod` String - Name of the underlying product. In this case Electron
|
|
* `_companyName` String - The company name in the crashReporter `options` object
|
|
* `upload_file_minidump` File - The crashreport as file
|
|
* All level one properties of the `extra` object in the crashReporter `options` object
|