This module is for publishing source maps to New Relic Browser. It can be used from the command line or programatically from a node script.
Published source maps are used to automatically unminify stack traces for JavaScript errors in the New Relic Browser Monitoring product.
Please see the source map documentation for more details.
In order to publish source maps from the command line, install the library globally.
npm install -g @newrelic/publish-sourcemap
Options can be provided on the command line or as environment variables.
publish-sourcemap [dist/sourcefile.js.map || https://example.com/sourcefile.js.map] [https://example.com/sourcefile.js] --applicationId=[ID] --apiKey=[apiKey]
Options:
--applicationId Browser application id (APPLICATION_ID)
--apiKey New Relic personal user API key (NR_API_KEY)
--releaseName [Optional] unique identifer for the release name
(RELEASE_NAME)
--releaseId [Optional] unique version for the release identifier
(RELEASE_ID)
--repoUrl [Optional] GitHub repository URL that the source map
is built from (REPO_URL)
--buildCommit [Optional] GitHub build commit hash that the source
map is built from (BUILD_COMMIT)
list-sourcemaps --applicationId=[ID] --apiKey=[apiKey] --limit=[20] --offset=[0]
Options:
--applicationId Browser application id (APPLICATION_ID)
--apiKey New Relic personal user API key (NR_API_KEY)
--limit Max number of results to return, default 20
--offset Number of results to skip before returning, default 0
delete-sourcemap --applicationId=[ID] --apiKey=[apiKey] --sourcemapId=[sourcemapId]
Options:
--applicationId Browser application id (APPLICATION_ID)
--apiKey New Relic personal user API key (NR_API_KEY)
--sourcemapId Unique id generated for a source map
Note that you may have to use list-sourcemaps
to get the unique id for the source map to delete.
The module can also be used from a JavaScript build tool such as gulp.
npm install --save-dev @newrelic/publish-sourcemap
var publishSourcemap = require(‘@newrelic/publish-sourcemap’).publishSourcemap
publishSourcemap({
sourcemapPath: './dist/bundle.js.map', // from a local file
// sourcemapUrl: 'https://example.com/sourcefile.js.map', // or from a URL
javascriptUrl: 'https://example.com/assets/bundle.js',
applicationId: 1234,
apiKey: 'APIKEY',
releaseName: 'OPTIONAL RELEASE NAME',
releaseId: 'OPTIONAL RELEASE ID',
repoUrl: 'OPTIONAL REPOSITORY URL',
buildCommit: 'OPTIONAL BUILD COMMIT HASH',
}, function (err) { console.log(err || 'Source map upload done')})
var deleteSourcemap = require(‘@newrelic/publish-sourcemap’).deleteSourcemap
deleteSourcemap({
sourcemapId: 'aaaaaaaa-bbbb-1010-bbbb-cccccccccccc',
applicationId: 1234,
apiKey: 'APIKEY',
}, function (err) { console.log(err || 'Deleted source map')})
var listSourcemaps = require(‘@newrelic/publish-sourcemap’).listSourcemaps
listSourcemaps({
applicationId: 1234,
apiKey: 'APIKEY',
limit: 20,
offset: 20
}, function (err, res) { console.log(err || res.sourcemaps)})