Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inspect exception cause by default & don't exclude ActiveJob::DeserializationError #1180

Merged
merged 4 commits into from
Jan 15, 2021

Conversation

st0012
Copy link
Collaborator

@st0012 st0012 commented Jan 3, 2021

By turning on inspect_exception_causes_for_exclusion by default, the SDK will compare exceptions with their causes as well. This can prevent issues like #642.

And because ActiveJob::DeserializationError was added to the excluded_exceptions list as a solution of #642, we can remove it now, which should solve #1071.

(changing the default value of inspect_exception_causes_for_exclusion is considered as a feature so this will be shipped in 4.2.0)

closes #1071

@codecov-io
Copy link

codecov-io commented Jan 3, 2021

Codecov Report

❗ No coverage uploaded for pull request base (4-2@3d2342b). Click here to learn what that means.
The diff coverage is n/a.

Impacted file tree graph

@@          Coverage Diff           @@
##             4-2    #1180   +/-   ##
======================================
  Coverage       ?   98.54%           
======================================
  Files          ?       99           
  Lines          ?     4476           
  Branches       ?        0           
======================================
  Hits           ?     4411           
  Misses         ?       65           
  Partials       ?        0           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3d2342b...c6c82c7. Read the comment docs.

@st0012 st0012 force-pushed the inspect-exception-cause-by-default branch 3 times, most recently from 821cbb5 to 58f9c29 Compare January 3, 2021 13:19
@st0012 st0012 force-pushed the inspect-exception-cause-by-default branch from 58f9c29 to 7b1f3e3 Compare January 11, 2021 08:22
@st0012 st0012 changed the base branch from master to 4-2 January 15, 2021 11:19
@st0012 st0012 force-pushed the inspect-exception-cause-by-default branch from 7b1f3e3 to 8584e22 Compare January 15, 2021 11:32
With this config turned on, we can avoid matching the surface exceptions
in integrations, which could cause issues like #1071.

Solves #642.
Since the previous commit solves #642, this commit can remove
ActiveJob::DeserializationError from the ignored exceptions list.

Solves #1071.
@st0012 st0012 force-pushed the inspect-exception-cause-by-default branch from 8584e22 to 0baafaf Compare January 15, 2021 11:35
@st0012 st0012 merged commit 200f3d8 into 4-2 Jan 15, 2021
@st0012 st0012 deleted the inspect-exception-cause-by-default branch January 15, 2021 11:45
st0012 added a commit that referenced this pull request Jan 17, 2021
…lizationError (#1180)

* Turn on inspect_exception_causes_for_exclusion by default

With this config turned on, we can avoid matching the surface exceptions
in integrations, which could cause issues like #1071.

Solves #642.

* Remove ActiveJob::DeserializationError from ignored list

Since the previous commit solves #642, this commit can remove
ActiveJob::DeserializationError from the ignored exceptions list.

Solves #1071.

* Update async document

* Update changelog
st0012 added a commit that referenced this pull request Feb 3, 2021
* Add ThreadsInterface (#1178)

* Add ThreadsInterface

* Update changelog

* Inspect exception cause by default & don't exclude ActiveJob::DeserializationError  (#1180)

* Turn on inspect_exception_causes_for_exclusion by default

With this config turned on, we can avoid matching the surface exceptions
in integrations, which could cause issues like #1071.

Solves #642.

* Remove ActiveJob::DeserializationError from ignored list

Since the previous commit solves #642, this commit can remove
ActiveJob::DeserializationError from the ignored exceptions list.

Solves #1071.

* Update async document

* Update changelog

* Make sentry-rails a Rails engine and provide default job class for async (#1181)

* Make sentry-rails a Rails engine too

* Add Sentry::SendEventJob

Instead of letting users defining their SentryJob class, we should
provide a default job class for them.

* Update document and example for the new job class

* Update changelog

* Add configuration option for trusted proxies (#1126)

* Add configuration option for trusted proxies

* Add `trusted_proxies` configuration option to sentry-ruby
* Add existing ActionDispatch `trusted_proxies` values

* Address some PR feedback

* Isolate trusted proxy test configuration
* Add comments to explain why we reverse the forwarded_for ip list
* Call `uniq` on the trusted proxy list
* Rename `filter_local_addresses(ips) to filter_trusted_proxy_addresses(ips)

* Remove duplicated hash entry

* Update some tests after PR feedback

* retrigger checks

Co-authored-by: Stan Lo <stan001212@gmail.com>

* Only define SendEventJob when ActiveJob is defined

* Allow users to configure ActiveJob adapters to ignore (#1256)

* Allow users to configure ActiveJob adapters to ignore

* Update changelog

* Add sidekiq adapter to sentry-rails' ignored adapters list (#1257)

* Add sidekiq adapter to sentry-rails' ignored adapters list

* Update changelog

* Tag queue name and jid on sidekiq events (#1258)

* Add queue name and jid to event tags

* Update changelog

* Tag job_id and provider_job_id on ActiveJob events (#1259)

* Refactor/test ActiveJob's context data

* Tag job_id and provider_job_id on ActiveJob events

* Update changelog

* Add ability to have many post initialization callbacks (#1261)

* Add ability to have many post initialization callbacks

* Revert version bumping, fix codestyle and rewrite rspec test

* Remove dependenciy bumping from sentry-sidekiq

* Add entries to CHANGELOG

* Support config.before_breadcrumb (#1253)

* Support config.before_breadcrumb

Example:

```
config.before_breadcrumb = lambda do |breadcrumb, hint|
  breadcrumb.message = "foo"
  breadcrumb
end
```

* Update changelog

* Update sentry-ruby's changelog

* Update sentry-rails' changelog

* Update sentry-sidekiq's changelog

* Rename ignored_active_job_adapters to skippable_job_adapters (#1264)

* Update sentry-ruby's changelog

Co-authored-by: Jon-Erik Schneiderhan <45184220+jeschneiderhan@users.noreply.github.com>
Co-authored-by: Valentine Kiselev <mrexox@outlook.com>
st0012 added a commit that referenced this pull request Feb 3, 2021
…lizationError (#1180)

* Turn on inspect_exception_causes_for_exclusion by default

With this config turned on, we can avoid matching the surface exceptions
in integrations, which could cause issues like #1071.

Solves #642.

* Remove ActiveJob::DeserializationError from ignored list

Since the previous commit solves #642, this commit can remove
ActiveJob::DeserializationError from the ignored exceptions list.

Solves #1071.

* Update async document

* Update changelog
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Removing ActiveJob::DeserializationError as a default ignored exception
2 participants