mirror of
https://github.com/hanzoai/insights-js.git
synced 2026-10-30 18:34:19 +00:00
@hanzo/webpack-plugin
Webpack plugin for uploading source maps to Insights for error tracking.
Installation
npm install @hanzo/webpack-plugin --save-dev
Usage
Add the plugin to your webpack configuration:
import { InsightsWebpackPlugin } from '@hanzo/webpack-plugin'
export default {
// ... your webpack config
plugins: [
new InsightsWebpackPlugin({
personalApiKey: process.env.INSIGHTS_PERSONAL_API_KEY,
projectId: process.env.INSIGHTS_PROJECT_ID,
sourcemaps: {
enabled: true,
releaseName: 'my-app',
releaseVersion: '1.0.0',
},
}),
],
}
Configuration Options
| Option | Type | Required | Default | Description |
|---|---|---|---|---|
personalApiKey |
string |
Yes | - | Your Insights personal API key |
projectId |
string |
Yes | - | Your Insights project/environment ID |
envId |
string |
No | - | Deprecated alias for projectId |
host |
string |
No | https://us.i.insights.hanzo.ai |
Insights instance host |
logLevel |
'debug' | 'info' | 'warn' | 'error' | 'silent' |
No | 'info' |
Logging verbosity |
cliBinaryPath |
string |
No | Auto-detected | Path to the Insights CLI binary |
sourcemaps.enabled |
boolean |
No | true in production |
Enable source map processing |
sourcemaps.releaseName |
string |
No | - | Release name for source map grouping |
sourcemaps.releaseVersion |
string |
No | - | Version identifier for the release |
sourcemaps.deleteAfterUpload |
boolean |
No | true |
Delete source maps after upload |
sourcemaps.batchSize |
number |
No | - | Number of source maps to upload in parallel |
Full Example
import path from 'node:path'
import webpack from 'webpack'
import { InsightsWebpackPlugin } from '@hanzo/webpack-plugin'
import packageJson from './package.json'
const config: webpack.Configuration = {
mode: 'production',
entry: './src/index.ts',
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist'),
},
plugins: [
new InsightsWebpackPlugin({
personalApiKey: process.env.INSIGHTS_PERSONAL_API_KEY,
projectId: process.env.INSIGHTS_PROJECT_ID,
host: process.env.INSIGHTS_API_HOST,
logLevel: 'error',
sourcemaps: {
enabled: true,
releaseName: packageJson.name,
releaseVersion: packageJson.version,
deleteAfterUpload: true,
},
}),
],
}
export default config