#Why I don't see breadcrumbs for this exception?

75 messages · Page 1 of 1 (latest)

drowsy tree
rose umbra
#

@drowsy tree it shouldn't be the CaptureExceptions. It could be that no breadcrumbs were generated until that point. The error itself tells me that it happened during startup, so I'm assuming that would be the case. I would tag @floral mango just in case to confirm, since he's working on the Unity SDK.

drowsy tree
#

no it is impossible that breadcrumbs are not generated until that point

floral mango
#

from what this looks to me you called CaptureMessage on this, right?

#

and breadcrumbs should be there anyway..strange

#

did you enable the new Logs feature?

drowsy tree
#

the current code is CaptureException, but the live one could have been different maybe

drowsy tree
#

this was a surprise

#

which is more or less at the same time of the one above

floral mango
#

if's a bit iffy, if you enable Logs then it automatically skips adding breadcrumbs. you then have to opt-in breadcrumbs on top of it. so we don't bloat and send stuff twice

drowsy tree
#

currnetly t his is what I got

#

(btw structured logging is new to me I don't know what it is and I didn't c heck)

floral mango
drowsy tree
#

yeah so the question remains 😄

#

the setup is identical for the 2 calls

#

however some time I use capture exception some time capture message

#

in fact I can never make up my mind about the two

floral mango
#

if you have an exception object, i.e. try-catch, go with CaptureException

drowsy tree
#

I oftern do this instead

#

SentrySdk.CaptureMessage(e.Message, (scope) =>
{
scope.SetTag("exception", e.Message);
scope.SetExtra("stackTrace", e.StackTrace);
});

#

but yeah the first one was a CaptureException

floral mango
#

if you go back in time in the same event, some of them have breadcrumbs

#

and they are all from the same release

#

ha.. you add the stacktrace as an additional data sting

#

do you let the SDK self-initialize? or do you call Init yourself at some point?

floral mango
#

there.. lol sneaky

#

are you ever clearing that scope?

drowsy tree
floral mango
#

breadcrumbs "exist" on the scope. so if you create a new scope or you clear the scope, the breadcrumbs disappear

#

alternatively, if you've implemented a SentryOptions.SetBeforeBreadcrumb filtering might kick in and just not let any through

drowsy tree
drowsy tree
#

we use ConfigureScope but we don't create new scopes

drowsy tree
floral mango
drowsy tree
#

only explanation because otherwise literally this is done at the begin of the game, few lines after the sentry init

floral mango
#

is it calling SentrySdk.Init again?

drowsy tree
#

let me see

#

no we d on't call it explicitly. should we?

floral mango
#

i don't think so, no

drowsy tree
#

few lines after was the wrong way to put it, what I meant is that this is early game stuff

#

few lines after log wise hehe

floral mango
#

you should be able to test this locally, right? start the game, logs something, capture an error/exeption, reload the game, log some more, capture something else. this should show up right away in sentry

drowsy tree
#

Yes I can do that test

drowsy tree
#

@floral mango Hijacking the thread for another questio: is it possible to let sentry recognise different "users"from the same process? let's say I want each thread of a process to be recognised as a different "user"

floral mango
drowsy tree
#

yes

#

special case for our game server, where a t hread = a match

#

basically right now we don'tt know exactly how many matches are affected because sentry counts the process, not the single match

drowsy tree
#

@floral mango another issue (recycling thread). I am trying to understand why it's a couple of day suddenly UCB doesn't want to finish the iOS build. The project build correctly, xcode compiles but then I get an " error: API request failed". AI is firmtly convinced that is due to Sentry (I didn't even mention it) because somehow it's failing to upload the symbols

floral mango
#

do you have access to the xcode build logs?

drowsy tree
#

let me echeck

#

AI was right

#
Writing logs to './sentry-symbols-upload.log'
  INFO    2026-03-28 17:20:56.519170 +00:00 Loaded file referenced by SENTRY_PROPERTIES (sentry.properties)
  INFO    2026-03-28 17:20:56.519676 +00:00 sentry-cli was invoked with the following command line: "./sentry-cli-Darwin-universal" "debug-files" "upload" "--il2cpp-mapping" "--include-sources" "/Users/buildbot/Library/Developer/Xcode/DerivedData/Unity-iPhone-emiqvwlejwlpsqgscqygftoiinfu/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/BuildProductsPath/Release-iphoneos"
error: API request failed

Caused by:
    sentry reported an error: You do not have permission to perform this action. (http status: 403)
Command PhaseScriptExecution emitted errors but did not return a nonzero exit code to indicate failure```
#

never seen this before

#

I suppose is not reaching the auth key or something?

floral mango
#

looks like the auth-key provided is missing the permissions to upload the symbols

drowsy tree
drowsy tree
#

also it started all of a sudden

floral mango
#

to unblock yourself right now, in the config window there is a "ignore cli errors" that you can check so you at least can build locally

#

but they are not on UCB either
that's kinda relevant. if you do not provide the cli options as asset you need to make sure they are available in the UCB somehow. same as the option configuration i added a cli option configuration callback. so you can put your own code there to get the auth token from the environment (as you probably don't want to check it in and keep it secret)

drowsy tree
#

this has always been like this

#

(just enabled ignore clie errors anwyay)

drowsy tree
#

anyway for the time being the ignore cli errors is working

floral mango
drowsy tree
#

the project is identical across the platforms, it would be ignored everywhere

floral mango
#

that's what i mean. then it will most likely fail everywhere in UCB