我正在使用 crashReporter 处理我们的电子应用程序中的崩溃并将报告发送到sentry.io。
目标是查看 JS 的哪一部分导致应用程序崩溃。为了模拟崩溃,我正在执行“process.crash()”。为了查看源代码跟踪,我从它的文档中安装了哨兵,但源代码从未出现在哨兵中。
这里是CrashReporter初始化代码:
crashReporter.start({
companyName: '...',
productName: '...',
uploadToServer: true,
submitURL: 'https://....ingest.sentry.io/api/.../minidump/?sentry_key=...'
});
Sentry 添加到项目中为:
sentry-wizard --integration electron
npm install --save-dev @sentry/cli electron-download
node sentry-symbols.js
Webpack 配置:
const SentryWebpackPlugin = require('@sentry/webpack-plugin');
var config = {
target: 'node',
devtool: 'source-map',
plugins: [
new webpack.ProgressPlugin(),
new webpack.EnvironmentPlugin(),
new SentryWebpackPlugin({
include: '.',
ignoreFile: '.sentrycliignore',
ignore: ['node_modules', 'webpack.config.js'],
configFile: 'sentry.properties'
})
],
...
您正在产生本机崩溃,您在这里看到的是符号化的 C++ 堆栈跟踪。尝试在 JavaScript 中的某处执行
throw new Error('test');
,然后您应该会看到 JS 堆栈跟踪。