Does RavenJS work for errors outside of Vue component mount()?


#1

In my Vue components errors only seem to make it to Sentry if I throw them from component mount(). If I throw the error elsewhere in the tags, the component dies (obviously) and no error is sent to Sentry (not what I expected). TBH I don’t know if my expectations are wrong … maybe this is normal?

// inside mycomponent.vue
<template> ... </template>
<script>
    throw new Error('notInMount'); // will not send to sentry
    export default {
      name: 'MyComponent',
      components: {
        ...,
      },
      computed: {
        ...,
      },
      mount({}, () => {
        throw new Error('InMount'); // does send to sentry
      })
   }
</script>

If this is normal, how do I get feedback on fundamental errors that blow up the entire app?


#2

I suspect is a Vue thing. Raven.js has a global error handler on window - if any errors bubble up to window they should be caught. My guess is Vue is suppressing this in its own error handler.

We’d be willing to debug if you could provide us with an isolated reproduction.