rollbar / rollbar-apple

Objective-C & Swift library for remote crash, exception, error reporting, and logging with Rollbar. It works on all Apple *OS platforms (macOS, iOS, tvOS, watchOS, etc).
https://docs.rollbar.com/docs/apple
MIT License
26 stars 16 forks source link

Is it thread safe on iOs? #172

Closed RSATom closed 1 year ago

RSATom commented 2 years ago

I get crash very similar to https://github.com/rollbar/rollbar-ios/issues/245#issuecomment-699420886 pretty frequently with v2.2.4

akornich commented 2 years ago

@RSATom, please, make sure you are not sharing logger instances across different threads.

RSATom commented 2 years ago

I'm using new Swift concurrency with async/await and actors. And flow can switch to different thread after any await. But even in that case it should be safe, since access to Rollbar object happens only from a single thread at any specific moment. But I still seen crashes. Finally I've moved all access to Rollbar to @MainActor but today got crash again... Right now I'm trying to find if there any other threading issue in my code...

RSATom commented 2 years ago

I've disabled Rollbar, and there is no crash anymore for a long time...

ghost commented 1 year ago

Hey @RSATom, We released major bugfixes above 3.0. This should work properly now, so I am closing this issue for now. Feel free to reopen it if you still experience any issue.

RSATom commented 1 year ago

@rollbar-bborsits thank you, but unfortunately we was not able to wait so long time and already switched to different solution...

ghost commented 1 year ago

@RSATom I understand your decision, and thanks for sharing it openly. Do you mind sharing which solution you switched to and its strengths? We want to learn where we fall short so that we can improve. Thanks.

RSATom commented 1 year ago

@rollbar-bborsits it's https://bugfender.com (they should pay me fee for advertising them 😄) The main reason was inability to use Rollbar on iOs platform due to crashes. Other good thing in Bugfender - it's possible to see events in order they happens. To get the same with Rollbar I have to use RQL. By default Rollbar orders events by second boundary and within specific second order of events is almost random, but in worst cases it's required to see events in right order.

But just to be clear, we are still using Rollbar on other platforms. I mean it's not so bad...

RSATom commented 1 year ago

Other thing I would like to see in Rollbar - ability to filter events from specific user/device by time interval.