Skip to content
This repository has been archived by the owner on Aug 30, 2023. It is now read-only.

IllegalArgumentException: timestamp is not ISO format #407

Closed
5 of 22 tasks
lefoy opened this issue May 13, 2020 · 16 comments
Closed
5 of 22 tasks

IllegalArgumentException: timestamp is not ISO format #407

lefoy opened this issue May 13, 2020 · 16 comments
Labels
invalid This doesn't seem right question Further information is requested

Comments

@lefoy
Copy link

lefoy commented May 13, 2020

Platform:

  • Android -> If yes, which Device API (and compileSdkVersion/targetSdkVersion/Build tools) version?
  • Java -> If yes, which Java (and sourceCompatibility/targetCompatibility) version?
  • Kotlin -> If yes, which Kotlin (and jvmTarget) version?
  • NDK -> If yes, which NDK/CMake version?
  • React-Native -> If yes, which version?
    0.61.5

IDE:

  • Android Studio -> If yes, which version?
  • IntelliJ -> If yes, which version?
  • Other -> If yes, which one?
    VS Code

Build system:

  • Gradle -> If yes, which version? 3.5.0
  • Buck -> If yes, which version?
  • Bazel -> If yes, which version?
  • Other -> If yes, which one?

Android Gradle Plugin:

  • Yes -> If yes, which version?
  • No
    I'm not sure on this one

Sentry Android Gradle Plugin:

  • Yes -> If yes, which version?
  • No
    Again I'm not sure on this one, I'm using the react-native plugin but since the error is only on Android I'm reporting here

Proguard/R8:

  • Enabled
  • Disabled

sentry-android installed with:

  • JCenter
  • Bintray
  • Maven Central
  • Manually
    It was installed with the react-native plugin

The version of sentry-android:
2.1.1


I have the following issue:

I'm trying to send errors to Sentry from my Android react-native app but the errors are not reported in Sentry. I'm using a Samsung S10 with android 10.

Steps to reproduce:

  • I followed the install guide for Android. I can log some things with captureMessage
    and captureException but native errors are not reported.

Actual result:

  • The error is not reported and I have this in my adb logs
05-13 12:00:48.499 32415 32566 D Sentry  : onEvent fired for EnvelopeFileObserver with event type 8 on path: /data/user/0/com.exposio.darkroom/cache/sentry/outbox for file 2b43aa7b-3a7d-43b5-84d9-a1cc10e9fc39.
05-13 12:00:48.499 32415 32566 D Sentry  : Processing Envelope with 1 item(s)
05-13 12:00:48.510 32415 32566 D Sentry  : Error when deserializing UTC timestamp format, it might be millis timestamp format.
05-13 12:00:48.510 32415 32566 D Sentry  : java.lang.IllegalArgumentException: timestamp is not ISO format 1589385638.064
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.DateUtils.getDateTime(DateUtils.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.adapters.DateDeserializerAdapter.deserialize(DateDeserializerAdapter.java:28)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.adapters.DateDeserializerAdapter.deserialize(DateDeserializerAdapter.java:15)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.TypeAdapter.fromJsonTree(TypeAdapter.java:285)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:128)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.TypeAdapter.fromJsonTree(TypeAdapter.java:285)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:128)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.Gson.fromJson(Gson.java:927)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.Gson.fromJson(Gson.java:865)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.AndroidSerializer.deserializeEvent(AndroidSerializer.java:116)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processEnvelope(EnvelopeSender.java:113)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processFile(EnvelopeSender.java:66)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processEnvelopeFile(EnvelopeSender.java:92)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.EnvelopeFileObserver.onEvent(EnvelopeFileObserver.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:163)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.observe(Native Method)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.run(FileObserver.java:113)
05-13 12:00:48.510 32415 32566 D Sentry  : Error when deserializing UTC timestamp format, it might be millis timestamp format.
05-13 12:00:48.510 32415 32566 D Sentry  : java.lang.IllegalArgumentException: timestamp is not ISO format 1589385638.132
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.DateUtils.getDateTime(DateUtils.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.adapters.DateDeserializerAdapter.deserialize(DateDeserializerAdapter.java:28)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.adapters.DateDeserializerAdapter.deserialize(DateDeserializerAdapter.java:15)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.TypeAdapter.fromJsonTree(TypeAdapter.java:285)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:128)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.TypeAdapter.fromJsonTree(TypeAdapter.java:285)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:128)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.Gson.fromJson(Gson.java:927)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at com.google.gson.Gson.fromJson(Gson.java:865)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.AndroidSerializer.deserializeEvent(AndroidSerializer.java:116)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processEnvelope(EnvelopeSender.java:113)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processFile(EnvelopeSender.java:66)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processEnvelopeFile(EnvelopeSender.java:92)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at io.sentry.android.core.EnvelopeFileObserver.onEvent(EnvelopeFileObserver.java:58)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:163)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.observe(Native Method)
05-13 12:00:48.510 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.run(FileObserver.java:113)
05-13 12:00:48.511 32415 32566 D Sentry  : Error when deserializing UTC timestamp format, it might be millis timestamp format.
05-13 12:00:48.511 32415 32566 D Sentry  : java.lang.IllegalArgumentException: timestamp is not ISO format 1589385638.162
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.core.DateUtils.getDateTime(DateUtils.java:58)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.adapters.DateDeserializerAdapter.deserialize(DateDeserializerAdapter.java:28)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.adapters.DateDeserializerAdapter.deserialize(DateDeserializerAdapter.java:15)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.TypeAdapter.fromJsonTree(TypeAdapter.java:285)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:128)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:58)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.TypeAdapter.fromJsonTree(TypeAdapter.java:285)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:128)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.UnknownPropertiesTypeAdapterFactory$UnknownPropertiesTypeAdapter.read(UnknownPropertiesTypeAdapterFactory.java:58)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.Gson.fromJson(Gson.java:927)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at com.google.gson.Gson.fromJson(Gson.java:865)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.AndroidSerializer.deserializeEvent(AndroidSerializer.java:116)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processEnvelope(EnvelopeSender.java:113)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processFile(EnvelopeSender.java:66)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.core.EnvelopeSender.processEnvelopeFile(EnvelopeSender.java:92)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at io.sentry.android.core.EnvelopeFileObserver.onEvent(EnvelopeFileObserver.java:58)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:163)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.observe(Native Method)
05-13 12:00:48.511 32415 32566 D Sentry  : 	at android.os.FileObserver$ObserverThread.run(FileObserver.java:113)
05-13 12:00:48.511 32415 32566 E Sentry  : Item failed to process.

Expected result:

  • The error should be reported in Sentry

===

If I can provide additional information please let me know and I will do so. I wasn't sure if I should report here or in the react-native repo, but since it's only on Android and I have a relevant adb log I thought I should post here. Thanks in advance for any help!

@lefoy
Copy link
Author

lefoy commented May 13, 2020

Here's the complete adb log: https://pastebin.com/XnYi2EEb

@marandaneto marandaneto added the question Further information is requested label May 13, 2020
@marandaneto
Copy link
Contributor

hey @lefoy thanks for raising this.

Do you have a beforeSend callback? what does it do?

we can see in the logs Event was dropped by beforeSend, it seems to be dropped by your own code.

The log: Error when deserializing UTC timestamp format, it might be millis timestamp format is a Debug level, as we support multiple formats.

@marandaneto marandaneto added the invalid This doesn't seem right label May 13, 2020
@lefoy
Copy link
Author

lefoy commented May 13, 2020

hey thanks for the update, I don't have a beforeSend but I do have beforeBreadcrumb

Sentry.init({
    environment : Config.ENV,
    dsn         : dsn,
    debug       : true,
    beforeBreadcrumb(breadcrumb) {
      return breadcrumb.category === "console" && breadcrumb.level === "log" ? null : breadcrumb;
    },
  });

@marandaneto
Copy link
Contributor

@lefoy sentry-react-native already inits sentry-android automatically, are you by any chance also calling SentryAndroid.init(...) as well?

@marandaneto
Copy link
Contributor

@lefoy btw are you able to intercept this call:

https://github.com/getsentry/sentry-react-native/blob/master/android/src/main/java/io/sentry/RNSentryModule.java#L138

and send me the content of this envelope String? so I'd be able to reproduce this.

@lefoy
Copy link
Author

lefoy commented May 13, 2020

I am not calling SentryAndroid.init( in my code.
I'm trying to catch the envelope string, I'll get back to you.

@lefoy
Copy link
Author

lefoy commented May 13, 2020

I'm having trouble logging the entire string. I have to admit I'm not very familiar with Java. Here's my code and log:

    @ReactMethod
    public void captureEnvelope(String envelope, Promise promise) {
        logger.info("================Sentry captureEnvelope====================");
        logger.info(envelope);
        logger.info("================Sentry captureEnvelope====================");
        try {
            File installation = new File(sentryOptions.getOutboxPath(), UUID.randomUUID().toString());
            try(FileOutputStream out = new FileOutputStream(installation)) {
                out.write(envelope.getBytes(Charset.forName("UTF-8")));
            }
        } catch (Exception e) {
            logger.info("Error reading envelope");
        }
        promise.resolve(true);
    }
05-13 16:09:44.496 11497 11655 I react-native-sentry: ================Sentry captureEnvelope====================
05-13 16:09:44.496 11497 11655 I react-native-sentry: {"event_id":"de0867d5dfc348569b9217b2dd2b71e0"}
05-13 16:09:44.496 11497 11655 I react-native-sentry: {"content_type":"application/json","length":27306,"type":"event"}
05-13 16:09:44.496 11497 11655 I react-native-sentry: {"exception":{"values":[{"type":"Error","value":"custom sentry error","stacktrace":{"frames":[{"colno":null,"filename":"app:///[native code]","function":"callFunctionReturnFlushedQueue","in_app":false,"platform":"node"},{"colno":17,"filename":"app:///JSTimers.js","function":"callTimers","in_app":false,"platform":"node"},{"colno":14,"filename":"app:///JSTimers.js","function":"_callTimer","in_app":false,"platform":"node"},{"colno":8,"filename":"app:///Switch.jsx","function":"setTimeout$argument_0","in_app":true,"lineno":145,"platform":"javascript","pre_context":["  changeState(state) {","    const callHandlers = this.start.state !== state;","    setTimeout(() => {","      this.setState({ state });","      if (callHandlers) {"],"context_line":"        this.callback();","post_context":["      }","    }, this.props.switchAnimationTime / 2);","  }","","  callback() {"]},{"colno":29,"filename":"app:///Switch.jsx","function":"callback","in_app":true,"lineno":157,"platform":"javascript","pre_context":["    if (state) {","      this.props.onActivate();","    } else {","      this.props.onDeactivate();","    }"],"context_line":"    this.props.onChangeState(state);","post_context":["  }","","  toggle() {","    if (!this.props.enableSlide) return;",""]},{"colno":null,"filename":"app:///[native code]","function":"toggleWideAngleAndShowInstructions","in_app":false,"platform":"node"},{"colno":20,"filename":"app:///MobileCapture.jsx","function":"toggleWideAngleAndShowInstructions","in_app":true,"lineno":235,"platform":"javascript","pre_context":["  startCaptureInterval() {","    this.captureInterval = window.setInterval(this.handleTargetSequence, 5000);","  }","","  toggleWideAngleAndShowInstructions() {"],"context_line":"    throw new Error(\"custom sentry error\");","post_context":["","    if (this.props.capture.wideAngle === false && this.props.capture.hasReadWideAngleInstructions === false) {","      Orientation.lockToPortrait();","      this.props.onWideAngleModalOpen();","      window.setTimeout(() => {"]}]},"mechanism":{"handled":true,"type":"generic"}}]},"level":"fatal","event_id":"de0867d5dfc348569b9217b2dd2b71e0","platform":"node","sdk":{"name":"sentry.javascript.react-native","packages":[{"name":"npm:@sentry/react-native","version":"1.3.8"}],"version":"1.3.8","integrations":["ReactNativeErrorHandlers","Release","InboundFilters","FunctionToString","Breadcrumbs","LinkedErrors","UserAgent","DebugSymbolicator","RewriteFrames","DeviceContext"]},"environment":"dev","tags":{},"user":{"email":"[email protected]","deviceToken":"17de9f8ba8be7aecf8421ae5be792b4645d1647e"},"breadcrumbs":[{"timestamp":1589400564.68,"category":"[STORE]","message":"Loading previous store...","type":"default"},{"timestamp":1589400564.779,"category":"[STORE]","message":"Previous store loaded","type":"default"},{"timestamp":1589400564.813,"category":"[NETWORK]","message":"Checking internet connection: 'https://admin.dev.exposiolite.com/robots.txt'","data":"https://admin.dev.exposiolite.com/robots.txt","type":"default"},{"timestamp":1589400564.818,"category":"[NETWORK]","message":"Checking internet connection: 'https://admin.dev.exposiolite.com/robots.txt'","data":"https://admin.dev.exposiolite.com/robots.txt","type":"default"},{"timestamp":1589400565.003,"category":"[CAPTURE]","message":"checkCapabilities","type":"default"},{"timestamp":1589400565.075,"category":"xhr","data":{"method":"HEAD","url":"https://admin.dev.exposiolite.com/robots.txt","status_code":200},"type":"http"},{"timestamp":1589400565.144,"category":"console","data":{"arguments":["[PAYMENT]","[MONITOR] RNIap.initConnection STARTING"],"logger":"console"},"level":"debug","message":"[PAYMENT] [MONITOR] RNIap.initConnection STARTING"},{"timestamp":1589400565.144,"category":"[PAYMENT]","message":"[MONITOR] RNIap.initConnection STARTING","type":"default"},{"timestamp":1589400565.146,"category":"[STORE]","me
05-13 16:09:44.496 11497 11655 I react-native-sentry: ================Sentry captureEnvelope====================

@marandaneto
Copy link
Contributor

@lefoy the String is being truncated.

What's about doing:

sentryOptions.getLogger().log(SentryLevel.DEBUG, envelope);

instead of logger.info(envelope); ?

@lefoy
Copy link
Author

lefoy commented May 13, 2020

Ok I think I got it, here's the string, I hope I got everything:

{"event_id":"ea61e546363649d6b9cecf7b607c1fe2"}
{"content_type":"application/json","length":27306,"type":"event"}
{"exception":{"values":[{"type":"Error","value":"custom sentry error","stacktrace":{"frames":[{"colno":null,"filename":"app:///[native code]","function":"callFunctionReturnFlushedQueue","in_app":false,"platform":"node"},{"colno":17,"filename":"app:///JSTimers.js","function":"callTimers","in_app":false,"platform":"node"},{"colno":14,"filename":"app:///JSTimers.js","function":"_callTimer","in_app":false,"platform":"node"},{"colno":8,"filename":"app:///Switch.jsx","function":"setTimeout$argument_0","in_app":true,"lineno":145,"platform":"javascript","pre_context":["  changeState(state) {","    const callHandlers = this.start.state !== state;","    setTimeout(() => {","      this.setState({ state });","      if (callHandlers) {"],"context_line":"        this.callback();","post_context":["      }","    }, this.props.switchAnimationTime / 2);","  }","","  callback() {"]},{"colno":29,"filename":"app:///Switch.jsx","function":"callback","in_app":true,"lineno":157,"platform":"javascript","pre_context":["    if (state) {","      this.props.onActivate();","    } else {","      this.props.onDeactivate();","    }"],"context_line":"    this.props.onChangeState(state);","post_context":["  }","","  toggle() {","    if (!this.props.enableSlide) return;",""]},{"colno":null,"filename":"app:///[native code]","function":"toggleWideAngleAndShowInstructions","in_app":false,"platform":"node"},{"colno":20,"filename":"app:///MobileCapture.jsx","function":"toggleWideAngleAndShowInstructions","in_app":true,"lineno":235,"platform":"javascript","pre_context":["  startCaptureInterval() {","    this.captureInterval = window.setInterval(this.handleTargetSequence, 5000);","  }","","  toggleWideAngleAndShowInstructions() {"],"context_line":"    throw new Error(\"custom sentry error\");","post_context":["","    if (this.props.capture.wideAngle === false && this.props.capture.hasReadWideAngleInstructions === false) {","      Orientation.lockToPortrait();","      this.props.onWideAngleModalOpen();","      window.setTimeout(() => {"]}]},"mechanism":{"handled":true,"type":"generic"}}]},"level":"fatal","event_id":"ea61e546363649d6b9cecf7b607c1fe2","platform":"node","sdk":{"name":"sentry.javascript.react-native","packages":[{"name":"npm:@sentry/react-native","version":"1.3.8"}],"version":"1.3.8","integrations":["ReactNativeErrorHandlers","Release","InboundFilters","FunctionToString","Breadcrumbs","LinkedErrors","UserAgent","DebugSymbolicator","RewriteFrames","DeviceContext"]},"environment":"dev","tags":{},"user":{"email":"[email protected]","deviceToken":"17de9f8ba8be7aecf8421ae5be792b4645d1647e"},"breadcrumbs":[{"timestamp":1589401172.382,"category":"[STORE]","message":"Loading previous store...","type":"default"},{"timestamp":1589401172.491,"category":"[STORE]","message":"Previous store loaded","type":"default"},{"timestamp":1589401172.532,"category":"[NETWORK]","message":"Checking internet connection: 'https://admin.dev.exposiolite.com/robots.txt'","data":"https://admin.dev.exposiolite.com/robots.txt","type":"default"},{"timestamp":1589401172.536,"category":"[NETWORK]","message":"Checking internet connection: 'https://admin.dev.exposiolite.com/robots.txt'","data":"https://admin.dev.exposiolite.com/robots.txt","type":"default"},{"timestamp":1589401172.71,"category":"[CAPTURE]","message":"checkCapabilities","type":"default"},{"timestamp":1589401172.736,"category":"xhr","data":{"method":"HEAD","url":"https://admin.dev.exposiolite.com/robots.txt","status_code":200},"type":"http"},{"timestamp":1589401172.764,"category":"console","data":{"arguments":["[PAYMENT]","[MONITOR] RNIap.initConnection STARTING"],"logger":"console"},"level":"debug","message":"[PAYMENT] [MONITOR] RNIap.initConnection STARTING"},{"timestamp":1589401172.765,"category":"[PAYMENT]","message":"[MONITOR] RNIap.initConnection STARTING","type":"default"},{"timestamp":1589401172.766,"category":"[STORE]","message":"Sandbox environment is false","type":"default"},{"timestamp":1589401172.841,"category":"xhr","data":{"method":"HEAD","url":"https://admin.dev.exposiolite.com/robots.txt","status_code":200},"type":"http"},{"timestamp":1589401172.872,"category":"console","data":{"arguments":["[PAYMENT]","[MONITOR] RNIap.initConnection SUCCESS",true],"logger":"console"},"level":"debug","message":"[PAYMENT] [MONITOR] RNIap.initConnection SUCCESS true"},{"timestamp":1589401172.872,"category":"[PAYMENT]","message":"[MONITOR] RNIap.initConnection SUCCESS: true","data":true,"type":"default"},{"timestamp":1589401172.873,"category":"console","data":{"arguments":["[PAYMENT]","[MONITOR] RNIap.getProducts STARTING"],"logger":"console"},"level":"debug","message":"[PAYMENT] [MONITOR] RNIap.getProducts STARTING"},{"timestamp":1589401172.873,"category":"[PAYMENT]","message":"[MONITOR] RNIap.getProducts STARTING","type":"default"},{"timestamp":1589401172.994,"category":"xhr","data":{"method":"POST","url":"http://localhost:8081/symbolicate","status_code":200},"type":"http"},{"timestamp":1589401173.018,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081//server/Projects/exposio/exposio-app/app/actions/store.js","status_code":404},"type":"http"},{"timestamp":1589401173.021,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081//server/Projects/exposio/exposio-app/app/actions/status.js","status_code":404},"type":"http"},{"timestamp":1589401173.026,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081//server/Projects/exposio/exposio-app/app/containers/app.js","status_code":404},"type":"http"},{"timestamp":1589401173.029,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/store.js","status_code":404},"type":"http"},{"timestamp":1589401173.031,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/status.js","status_code":404},"type":"http"},{"timestamp":1589401173.034,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/app.js","status_code":404},"type":"http"},{"timestamp":1589401173.041,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/actions/store.js","status_code":404},"type":"http"},{"timestamp":1589401173.043,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/actions/status.js","status_code":404},"type":"http"},{"timestamp":1589401173.05,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/containers/app.js","status_code":404},"type":"http"},{"timestamp":1589401173.094,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/app/actions/status.js","status_code":200},"type":"http"},{"timestamp":1589401173.097,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/app/actions/store.js","status_code":200},"type":"http"},{"timestamp":1589401173.102,"category":"xhr","data":{"method":"GET","url":"http://localhost:8081/app/containers/app.js","status_code":200},"type":"http"},{"timestamp":1589401173.51,"category":"console","data":{"arguments":["[PAYMENT]","[MONITOR] RNIap.getProducts SUCCESS",["[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]","[Object]"]],"logger":"console"},"level":"debug","message":"[PAYMENT] [MONITOR] RNIap.getProducts SUCCESS [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]"},{"timestamp":1589401173.523,"category":"[PAYMENT]","message":"[MONITOR] RNIap.getProducts SUCCESS: [ { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credit to develop 1 HDR photo',\n    title: '1 HDR Photo (Exposio Real Estate Camera)',\n    localizedPrice: '$0.99',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '0.99',\n    productId: 'com.exposio.hdr1' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 10 HDR photos',\n    title: '10 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$9.90',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '9.90',\n    productId: 'com.exposio.hdr10' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 11 HDR photos',\n    title: '11 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$10.89',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '10.89',\n    productId: 'com.exposio.hdr11' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 12 HDR photos',\n    title: '12 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$11.88',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '11.88',\n    productId: 'com.exposio.hdr12' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 13 HDR photos',\n    title: '13 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$12.87',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '12.87',\n    productId: 'com.exposio.hdr13' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 14 HDR photos',\n    title: '14 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$13.86',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '13.86',\n    productId: 'com.exposio.hdr14' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 15 HDR photos',\n    title: '15 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$14.85',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '14.85',\n    productId: 'com.exposio.hdr15' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 16 HDR photos',\n    title: '16 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$15.84',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '15.84',\n    productId: 'com.exposio.hdr16' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 17 HDR photos',\n    title: '17 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$16.83',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '16.83',\n    productId: 'com.exposio.hdr17' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 18 HDR photos',\n    title: '18 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$17.82',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '17.82',\n    productId: 'com.exposio.hdr18' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 19 HDR photos',\n    title: '19 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$18.81',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '18.81',\n    productId: 'com.exposio.hdr19' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 2 HDR photos',\n    title: '2 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$1.98',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '1.98',\n    productId: 'com.exposio.hdr2' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 20 HDR photos',\n    title: '20 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$19.80',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '19.80',\n    productId: 'com.exposio.hdr20' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 3 HDR photos',\n    title: '3 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$2.97',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '2.97',\n    productId: 'com.exposio.hdr3' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 4 HDR photos',\n    title: '4 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$3.96',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '3.96',\n    productId: 'com.exposio.hdr4' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 5 HDR photos',\n    title: '5 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$4.95',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '4.95',\n    productId: 'com.exposio.hdr5' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 6 HDR photos',\n    title: '6 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$5.94',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '5.94',\n    productId: 'com.exposio.hdr6' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 7 HDR photos',\n    title: '7 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$6.93',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '6.93',\n    productId: 'com.exposio.hdr7' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 8 HDR photos',\n    title: '8 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$7.92',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '7.92',\n    productId: 'com.exposio.hdr8' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: 'Credits to develop 9 HDR photos',\n    title: '9 HDR Photos (Exposio Real Estate Camera)',\n    localizedPrice: '$8.91',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '8.91',\n    productId: 'com.exposio.hdr9' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: '11 credits',\n    title: '11 credits (Exposio Real Estate Camera)',\n    localizedPrice: '$9.99',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '9.99',\n    productId: 'com.exposio.credits11' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: '120 credits',\n    title: '120 credits (Exposio Real Estate Camera)',\n    localizedPrice: '$99.99',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '99.99',\n    productId: 'com.exposio.credits120' },\n  { introductoryPricePeriodAndroid: '',\n    introductoryPriceCyclesAndroid: '',\n    freeTrialPeriodAndroid: '',\n    subscriptionPeriodAndroid: '',\n    introductoryPrice: '',\n    description: '45 credits',\n    title: '45 credits (Exposio Real Estate Camera)',\n    localizedPrice: '$39.99',\n    type: 'inapp',\n    currency: 'CAD',\n    price: '39.99',\n    productId: 'com.exposio.credits45' } ]","data":[{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credit to develop 1 HDR photo","title":"1 HDR Photo (Exposio Real Estate Camera)","localizedPrice":"$0.99","type":"inapp","currency":"CAD","price":"0.99","productId":"com.exposio.hdr1"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 2 HDR photos","title":"2 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$1.98","type":"inapp","currency":"CAD","price":"1.98","productId":"com.exposio.hdr2"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 3 HDR photos","title":"3 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$2.97","type":"inapp","currency":"CAD","price":"2.97","productId":"com.exposio.hdr3"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 4 HDR photos","title":"4 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$3.96","type":"inapp","currency":"CAD","price":"3.96","productId":"com.exposio.hdr4"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 5 HDR photos","title":"5 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$4.95","type":"inapp","currency":"CAD","price":"4.95","productId":"com.exposio.hdr5"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 6 HDR photos","title":"6 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$5.94","type":"inapp","currency":"CAD","price":"5.94","productId":"com.exposio.hdr6"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 7 HDR photos","title":"7 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$6.93","type":"inapp","currency":"CAD","price":"6.93","productId":"com.exposio.hdr7"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 8 HDR photos","title":"8 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$7.92","type":"inapp","currency":"CAD","price":"7.92","productId":"com.exposio.hdr8"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 9 HDR photos","title":"9 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$8.91","type":"inapp","currency":"CAD","price":"8.91","productId":"com.exposio.hdr9"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 10 HDR photos","title":"10 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$9.90","type":"inapp","currency":"CAD","price":"9.90","productId":"com.exposio.hdr10"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"11 credits","title":"11 credits (Exposio Real Estate Camera)","localizedPrice":"$9.99","type":"inapp","currency":"CAD","price":"9.99","productId":"com.exposio.credits11"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 11 HDR photos","title":"11 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$10.89","type":"inapp","currency":"CAD","price":"10.89","productId":"com.exposio.hdr11"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 12 HDR photos","title":"12 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$11.88","type":"inapp","currency":"CAD","price":"11.88","productId":"com.exposio.hdr12"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 13 HDR photos","title":"13 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$12.87","type":"inapp","currency":"CAD","price":"12.87","productId":"com.exposio.hdr13"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 14 HDR photos","title":"14 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$13.86","type":"inapp","currency":"CAD","price":"13.86","productId":"com.exposio.hdr14"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 15 HDR photos","title":"15 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$14.85","type":"inapp","currency":"CAD","price":"14.85","productId":"com.exposio.hdr15"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 16 HDR photos","title":"16 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$15.84","type":"inapp","currency":"CAD","price":"15.84","productId":"com.exposio.hdr16"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 17 HDR photos","title":"17 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$16.83","type":"inapp","currency":"CAD","price":"16.83","productId":"com.exposio.hdr17"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 18 HDR photos","title":"18 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$17.82","type":"inapp","currency":"CAD","price":"17.82","productId":"com.exposio.hdr18"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 19 HDR photos","title":"19 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$18.81","type":"inapp","currency":"CAD","price":"18.81","productId":"com.exposio.hdr19"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"Credits to develop 20 HDR photos","title":"20 HDR Photos (Exposio Real Estate Camera)","localizedPrice":"$19.80","type":"inapp","currency":"CAD","price":"19.80","productId":"com.exposio.hdr20"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"45 credits","title":"45 credits (Exposio Real Estate Camera)","localizedPrice":"$39.99","type":"inapp","currency":"CAD","price":"39.99","productId":"com.exposio.credits45"},{"introductoryPricePeriodAndroid":"","introductoryPriceCyclesAndroid":"","freeTrialPeriodAndroid":"","subscriptionPeriodAndroid":"","introductoryPrice":"","description":"120 credits","title":"120 credits (Exposio Real Estate Camera)","localizedPrice":"$99.99","type":"inapp","currency":"CAD","price":"99.99","productId":"com.exposio.credits120"}],"type":"default"},{"timestamp":1589401173.525,"category":"console","data":{"arguments":["[PAYMENT]","[MONITOR] RNIap.endConnection STARTING"],"logger":"console"},"level":"debug","message":"[PAYMENT] [MONITOR] RNIap.endConnection STARTING"},{"timestamp":1589401173.526,"category":"[PAYMENT]","message":"[MONITOR] RNIap.endConnection STARTING","type":"default"},{"timestamp":1589401173.55,"category":"console","data":{"arguments":["[PAYMENT]","[MONITOR] RNIap.endConnection SUCCESS",true],"logger":"console"},"level":"debug","message":"[PAYMENT] [MONITOR] RNIap.endConnection SUCCESS true"},{"timestamp":1589401173.551,"category":"[PAYMENT]","message":"[MONITOR] RNIap.endConnection SUCCESS: true","data":true,"type":"default"},{"timestamp":1589401176.259,"category":"[NETWORK]","message":"Checking internet connection: 'https://admin.dev.exposiolite.com/robots.txt'","data":"https://admin.dev.exposiolite.com/robots.txt","type":"default"},{"timestamp":1589401176.318,"category":"xhr","data":{"method":"HEAD","url":"https://admin.dev.exposiolite.com/robots.txt","status_code":200},"type":"http"},{"timestamp":1589401176.324,"category":"[NETWORK]","message":"Internet is connected","type":"default"},{"timestamp":1589401178.846,"category":"[STATE]","message":"Application is now in background","type":"default"},{"timestamp":1589401179.621,"category":"[STATE]","message":"Application has gained focus","type":"default"}],"release":"[email protected]+3145729","dist":"3145729","extra":{"componentStack":"[undefined]","jsEngine":"[undefined]"},"message":{}}

@lefoy
Copy link
Author

lefoy commented May 13, 2020

@marandaneto thank for you help so far, I really appreciate the quick replies, let me know if you need more information

@marandaneto
Copy link
Contributor

marandaneto commented May 13, 2020

@lefoy no worries, the problem is the breadcrumbs list, still trying to figure this out.

the data field is supposed to be a map of key: value but it's often different types.
https://docs.sentry.io/enriching-error-data/breadcrumbs/?platform=browser

eg "data": "https://admin.dev.exposiolite.com/robots.txt"

it should be something like
"data": { "link": "https://admin.dev.exposiolite.com/robots.txt" }

the data field in your breadcrumbs is very different every time, this is one of the issues.

look this one: "data": true

I'd double-check your data structure for breadcrumbs and it should be fine.

@lefoy
Copy link
Author

lefoy commented May 13, 2020

Alright thank you for your help again, I will check my breadcrumbs

@lefoy
Copy link
Author

lefoy commented May 13, 2020

Yes I can confirm it's working great when I disabled my breadcrumb 👍
I'll go through my breadcrumbs to make sure they all follow the same type
I appreciate the help, have a good one!

@lefoy lefoy closed this as completed May 13, 2020
@marandaneto
Copy link
Contributor

@lefoy cool.

one of them is also an array but not a map "data": [{"introductoryPricePeriodAndroid": ""....

glad to help, have a good one.

@lefoy
Copy link
Author

lefoy commented May 13, 2020

Just to give a bit of background on how we ended up with breadcrumbs like that in case someone is in the same situation someday and finds this on Google.

We were using a logging system like Bugfender before and we had a bunch of custom log in our app to help debug our clients. We were logging strings, objects, booleans etc.

We found out about Sentry and immediately wanted to try it out because we loved the way the stacktrace and errors were displayed. Before we can drop our current logging system, we wanted to log both in Sentry and Bugfender for a while so we added a breadcrumb for each custom log we had, but as we found out, it doesn't work well with all the different type of logs we had. We will update our breadcrumbs to make sure they all follow the correct type and it should work as expected 👍

@marandaneto
Copy link
Contributor

yeah, you just need to double-check the data structure and that's it, everything else was correct, good luck and have a good one.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
invalid This doesn't seem right question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants