nuxt-bugsnag
nuxt-bugsnag
Playground
Open Stackblitz and try it out.
Setup
- Add
nuxt-bugsnag
dependency to your project
npx nuxi@latest module add bugsnag
- Add
nuxt-bugsnag
to themodules
section ofnuxt.config.js
.
{
modules: [
'nuxt-bugsnag'
]
}
You can pass every bugsnag options in the config object
{
bugsnag: {
config: {
apiKey: 'your key',
enabledReleaseStages: ['staging', 'production'],
}
}
}
Source Maps
You can upload sourcemaps by adding the option publishRelease
.
It's important to set the baseUrl as well, it will allow bugsnag to map your errors to the sourcemap:
{
bugsnag: {
publishRelease: true,
baseUrl: 'http://localhost:3000'
}
}
The output for a medium Nuxt App can get quite big. So we added an option to disable the logs for that case.
{
bugsnag: {
publishRelease: true,
disableLog: true,
baseUrl: 'http://localhost:3000'
}
}
Setting a different project root
If your Nuxt App runs in a different folder than /
, you might want to set projectRoot
to this directory, so that BugSnag can match the sourcemap.
{
bugsnag: {
publishRelease: true,
projectRoot: '/someFolder/'
}
}
Config Example
I would recommend to set these options
{
modules: [
'nuxt-bugsnag',
],
bugsnag: {
publishRelease: true,
config: {
apiKey: 'YOUR_API_KEY',
enabledReleaseStages: ['staging', 'production'],
releaseStage: process.env.NODE_ENV,
appVersion: 'YOUR_VERSION',
}
}
}
Reporting custom errors
The simplest answer is like this.
this.$bugsnag.notify(new Error('Some Error'))
if you like the composition approach you can do it like this
useBugsnag().notify('Some Error')
Performance
Only available in 7.4.0 and above
The simplest Configuration for the bugsnag performance feature is like this
{
bugsnag: {
apiKey: 'YOUR API KEY',
performance: true
}
}
for custom options you can use the following config and get all the settings from here
{
bugsnag: {
apiKey
config: {
performanceConfig: {
autoInstrumentFullPageLoads: true,
}
}
}
}
Custom Performance Monitoring
For sending Custom Spans see this documentation. There is a little helper in the module to send custom spans.
This can only be used on the client side and should never be called on the server side. There is a mock included so you don't need to worry about that, but should be kept in mind.
useBugsnagPerformance().startSpan('my-span')
Development
- Clone this repository
- Install dependencies using
npm install
- Start development server using
npm run dev
License
Copyright (c) Julian Martin julian.martin@russmedia.com