sentry-capacitor: Errors on iOS are not sent to sentry.io when using with @sentry/vue

Environment

How do you use Sentry? Sentry SaaS (sentry.io)

Which SDK and version? @sentry/capacitor@0.4.0 @sentry/vue@6.11.0 @sentry/tracing@6.11.0 @capacitor/core@3.2.4 @capacitor/cli@3.2.4 @capacitor/ios@3.2.4

Steps to Reproduce

I am using the following code to initialize sentry. This works on android and web:

import Vue from 'vue';
import { Integrations } from '@sentry/tracing';
import * as Sentry from '@sentry/capacitor';
import * as SentryVue from "@sentry/vue";

console.warn('BEFORE INIT');

Sentry.init({
  enabled: true,
  Vue,
  dsn: "myDsn",
  environment: "environment",
  release: "release",
  ignoreErrors: ["CANCEL"],
  integrations: [new Integrations.BrowserTracing()],
  tracesSampleRate: 0.1
  }, SentryVue.init);

console.warn('AFTER INIT');

Expected Result

Errors should be sent to sentry.io

Actual Result

No error is sent to sentry.io on iOS.

I think the native sentry plugin is not initialized correctly. SentryCapacitor.initNativeSdk never resolves and a DataCloneError gets thrown at some point. When trying to send something to sentry.io SentryCapacitor.fetchNativeSdkInfo rejects with Called fetchSdkInfo without initializing cocoa SDK..

Bildschirmfoto 2021-10-05 um 13 09 14

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 20 (8 by maintainers)

Most upvoted comments

@jennmueng Yes, it works again when I remove the Vue option. Here is a workaround:

import Vue from 'vue';
import { Integrations } from '@sentry/tracing';
import * as Sentry from '@sentry/capacitor';
import * as SentryVue from "@sentry/vue";

type VueOptions = Omit<NonNullable<Parameters<typeof SentryVue.init>[0]>, 'Vue'>
const initSentryVue = (options?: VueOptions) => SentryVue.init({...options, Vue});

entry.init({
  enabled: true,
  dsn: "myDsn",
  environment: "environment",
  release: "release",
  ignoreErrors: ["CANCEL"],
  integrations: [new Integrations.BrowserTracing()],
  tracesSampleRate: 0.1
  }, initSentryVue);

@lucas-zimerman Thanks for reply !

before create new issue, I will try at new release 0.6.1

This issue will be fixed on the next release 😃 Also @sawaca96 could you open a new issue with your specific problem in regard of your source mapping question?

Thanks for clarifying, we’ll investigate it 🙂

I use throw new Error('Hi') and debuggin on Xcode simulator