crashReporter
crash-reporterモジュールはアプリのクラッシュレポートを送信することができます。
リモートサーバーに自動的にクラッシュレポートを登録する例です。
const crashReporter = require('electron').crashReporter
crashReporter.start({
productName: 'YourName',
companyName: 'YourCompany',
submitURL: 'https://your-domain.com/url-to-submit',
autoSubmit: true
})
メソッド
crash-reporterモジュールは次のメソッドを持ちます:
crashReporter.start(options)
options Object, properties:
productNameString, デフォルト: Electron.companyNameString (必須)submitURLString, (必須)- クラッシュレポートがPOSTで送信されるURL
autoSubmitBoolean, デフォルト:true.- ユーザーの判断なくクラッシュレポートを送信します
ignoreSystemCrashHandlerBoolean, デフォルト:false.extraObject- あなたが定義できるオブジェクトは、レポートと一緒に送信されます。
- 文字列プロパティのみが正しく送信されます。
- オブジェクトのネストはサポートしていません。
他のcrashReporterAPIを使用する前にこのメソッドをコールする必要があります。
Note: macOSでは、Electronは、WindowsとLinux上のbreakpad とは異なる、新しいcrashpadクライアントを使用します。クラッシュ収集機能を有効にするために、メインプロセスや、クラッシュレポートを収集したいそれぞれのレンダラープロセスで、crashpadを初期化するためにcrashReporter.startAPIをコールする必要があります。
crashReporter.getLastCrashReport()
日付と最後のクラッシュレポートのIDを返します。もしなんのクラッシュレポートも送信されていないか、クラッシュレポーターが起動していない場合、nullを返します。
crashReporter.getUploadedReports()
滑ってのアップロードされたクラッシュレポートが返されます。それぞれのレポートには日付とアップロードされたIDが含まれます。
crash-reporter Payload
クラッシュレポーターはPOSTでsubmitURL に次のデーターが送信されます。
verString - ElectronのバージョンplatformString - 例: 'win32'.process_typeString - 例: 'renderer'.guidString - 例: '5e1286fc-da97-479e-918b-6bfb0c3d1c72'_versionString -package.jsonでのバージョン_productNameString -crashReporterでのプロダクト名オプションobject.prodString - 基盤となる製品の名前。この場合は、Electronです。_companyNameString -crashReporterでの会社名オプションobject.upload_file_minidumpFile - ファイル形式のクラッシュレポートcrashReporterでのextraオブジェクトのすべてのレベル1のプロパティオプションobject