elastic-apm-sourcemap-webpack-plugin v1.6.2
ElasticAPMSourceMapPlugin
ElasticAPMSourceMapPlugin is a Webpack plugin that uploads sourcemaps generated by Webpack to a Elastic APM server.
Installation
Use npm:
$ npm install elastic-apm-sourcemap-webpack-plugin --save-devUse yarn:
$ yarn add elastic-apm-sourcemap-webpack-plugin --devExample
An example of webpack.config.js:
const ElasticAPMSourceMapPlugin = require('elastic-apm-sourcemap-webpack-plugin').default;
const path = require('path');
const PUBLIC_PATH = 'https://path/to/assets';
module.exports = {
mode: 'production',
entry: path.resolve(__dirname, './entry.js'),
publicPath: PUBLIC_PATH,
output: {
path: 'build',
filename: 'index-[hash].js'
},
plugins: [
new ElasticAPMSourceMapPlugin({
serviceName: 'SERVICE_NAME',
serviceVersion: 'SERVICE_VERSION',
serverURL: 'http://127.0.0.1:8200/assets/v1/sourcemaps',
publicPath: PUBLIC_PATH,
secret: 'SECRET',
logLevel: 'debug'
})
]
};If you are using webpack.babel.js, you can import it without .default:
import ElasticAPMSourceMapPlugin from 'elastic-apm-sourcemap-webpack-plugin';
export default {
// ...
plugins: [new ElasticAPMSourceMapPlugin(/* ... */)]
};Configuration
Pass an object to ElasticAPMSourceMapPlugin to configure the plugin. Available fields are:
serviceName: string
Required. Need to be the same value as in the APM RUM JavaScript agent configuration.
serviceVersion: string
Required. Need to be the same value as in the APM RUM JavaScript agent configuration.
serverURL: string
Required. The URL of the APM server to upload sourcemaps to.
publicPath: string
Required. The base path which will be used to create the bundle_filepath. Need to be an absolute path.
secret?: string
Optional. The secret token for uploading sourcemaps. This field is required if the APM server needs it.
logLevel?: 'info' | 'warn' | 'error' | 'trace' | 'debug' | 'silent'
Optional. Default to 'warn'. Level of the messages that ElasticAPMSourceMapPlugin will log.
ignoreErrors?: boolean
Optional. Default to false. Set it to true to avoid adding errors to the webpack compilation.