View Source CHANGELOG
12.0.3
New Features ✨
- (agents) Add AGENTS.md by @solnic in #1013
- (logs) Support non-primitives in the attributes by @solnic in #1014
Bug Fixes 🐛
- Set release metadata for traces by @FugiTech in #1009
Internal Changes 🔧
Deps Dev
- Bump svelte from 5.53.0 to 5.53.6 in /test_integrations/tracing/svelte_mini by @dependabot in #1006
- Bump rollup from 4.53.5 to 4.59.0 in /test_integrations/tracing/svelte_mini by @dependabot in #1007
12.0.2
Bug Fixes 🐛
- (tp) Skip sending if DSN is not set by @solnic in #1008
12.0.1
Internal Changes 🔧
- (deps) Update ver spec for finch by @solnic in #1003
12.0.0
Logs & Telemetry Processor
Support for Structured Logs is here! 🎉 To enable:
config :sentry,
# your config...
enable_logs: true # <- add this!Log events are sent to Sentry using the new TelemetryProcessor backend. You can enable it for other types of events via configuration:
config :sentry,
# your config...
enable_logs: true,
telemetry_processor_categories: [:log, :error, :check_in, :transaction] # <- add thisThis will become the default backend eventually, please try it out and report any issues!
You can learn more about the Telemetry Processor in our official documentation.
Related Pull Requests
Other new features
- Support for Distributed Tracing (957)
- Support for LiveView spans captured under single trace root (#977)
- Add
should_report_error_callbackoption toOban.ErrorReporterfor flexible error reporting logic (#832) - Handle HTTP 413 responses for oversized envelopes (#982)
Bug Fixes
Wrong app_name used by Igniter in prod.exs (#972)
This requires configuring a custom propagator:
# Configure OpenTelemetry to use Sentry propagator for distributed tracing config :opentelemetry, text_map_propagators: [ :trace_context, :baggage, Sentry.OpenTelemetry.Propagator ]
Various improvements
Switch default HTTP client from Hackney to Finch (#897)
:source_code_exclude_patternssupport for OTP-28.0 (#965)For people on OTP 28.1
All you need is to use
~r/foo/Einstead of~r/foo/in your config files. For example:config :sentry, enable_source_code_context: true, root_source_code_paths: [File.cwd!()], source_code_exclude_patterns: [~r/_build/E, ~r/deps/E, ~r/priv/E, ~r/test/E]For people on OTP 28.0
You can convert your regexps for
source_code_exclude_patternsconfig to strings:config :sentry, enable_source_code_context: true, root_source_code_paths: [File.cwd!()], source_code_exclude_patterns: ["/_build/", "/deps/", "/priv/", "/test/"]
11.0.4
- Fix safe JSON encoding of improper lists (#938)
11.0.3
Various improvements
- Allow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use
sentrywith tracing disabled along with older versions of opentelemetry deps (#931)
11.0.2
Bug fixes
- Deeply nested spans are handled now when building up traces in
SpanProcessor(#924)
Various improvements
- Span's attributes no longer include
db.url: "ecto:"entries as they are now filtered out (#925)
11.0.1
Various improvements
Sentry.OpenTelemetry.Samplernow works with an empty config (#915)
11.0.0
This release comes with a beta support for Traces using OpenTelemetry - please test it out and report any issues you find.
New features
Beta support for Traces using OpenTelemetry (#902)
To enable Tracing in your Phoenix application, you need to add the following to your
mix.exs:def deps do [ # ... {:sentry, "~> 11.0.0"}, {:opentelemetry, "~> 1.5"}, {:opentelemetry_api, "~> 1.4"}, {:opentelemetry_exporter, "~> 1.0"}, {:opentelemetry_semantic_conventions, "~> 1.27"}, {:opentelemetry_phoenix, "~> 2.0"}, {:opentelemetry_ecto, "~> 1.2"}, # ... ]And then configure Tracing in Sentry and OpenTelemetry in your
config.exs:config :sentry, # ... traces_sample_rate: 1.0 # any value between 0 and 1.0 enables tracing config :opentelemetry, span_processor: {Sentry.OpenTelemetry.SpanProcessor, []} config :opentelemetry, sampler: {Sentry.OpenTelemetry.Sampler, []}Add installer (based on Igniter) (#876)
Various improvements
- Tweak credit card regex handling for OTP-28 (#898)
Changelog
10.10.0
This release adds Telemetry crash reporting, fixes compatibility with Erlang/OTP 28, and includes several bug fixes.
New features
- Add Telemetry integration for capturing Telemetry crash events in Sentry (#887 by @whatyouhide)
- Add
:owneroption for check-ins, providing more control over cron monitoring (#879 by @Miradorn)
Bug fixes
- Fix regexes on Erlang/OTP 28 (#889 by @josevalim)
- Fix ignored exception in the default filter by correcting
Plug.Parsers.RequestTooLargereference (#884 by @mbaleczny) - Fix hyperlink tag in
Sentry.LoggerBackendmoduledoc (#880 by @bjacquet) - Remain compatible with new translation format to be introduced in Elixir 1.19 (#885 by @martosaur)
Various improvements
- Update OTP and OS in CI (#882 by @solnic)
10.9.0
This release adds a bunch of new features and fixes a few papercut bugs.
New features
- Add
:tags_from_metadataoption toSentry.LoggerHandler. Use this to better structure reports that come from logs (#840 by @icehaunter). - Add
:discard_thresholdoption toSentry.LoggerHandlerto implement load shedding when the logger gets overloaded. - If you want to use Elixir 1.18's new
JSONmodule, now you can (#845). - Add
:in_app_otp_appsconfiguration option. This should replace:in_app_module_allow_listfor most use cases, making configuration simpler (#854 by @solnic). - Add support for per-module custom options for check ins. This means you can now configure single Oban (or Quantum) jobs with per-worker options such as timezones and more (#833 by @savhappy).
- Add a global
:extraconfig that can be set at the:sentryapplication level (akin to:tagstoday). - Improve Oban error reporting.
Bug fixes
- We now deduplicate identical events significantly less, reducing the risk of not reporting events that are not duplicates.
- When dropping breadcrumbs (because of the limit being reached), we now retain newest breadcrumbs instead of older ones (#858 by @dajinchu).
- Ensure log messages are not captured with
:capture_log_messagesisfalse(#865 by @joladev). - Normalize Oban exception reasons for better reports.
10.8.1
Various fixes & improvements
- Update to LiveView 1.0 🎉 (#826) by @solnic
- Replace release bot with GH app (#828) by @Jeffreyhung
10.8.0
This release bumps the minimum Elixir requirement to 1.13, fixes a few bugs, and introduces client reports. Client reports will be sent to Sentry by default, but you can disable them with:
config :sentry,
# ...,
send_client_reports: falseImprovements and new features
- Add support for client reports (#801) by @savhappy
- Add option for generating custom cron monitor slugs (#803) by @iautom8things
- Improvements to documentation
- Require Elixir 1.13+ (21f0f77e) by @whatyouhide
- Validate that custom HTTP clients return correct stuff (#794) by @savhappy
Bug fixes
- Fix stacktraces with no frames (#787) by @savhappy
- Special-case Ranch errors in the logger handler for OTP 25 (#818) by @whatyouhide
- Few fixes to
mix sentry.send_test_event - Handle Bandit exception when fetching peer data (#814) by @ardhitama
- Support non-exception error values from Oban jobs (#807) by @savhappy
10.7.1
Various fixes & improvements
- Add
:monitor_config_defaultsintegrations option (#782). — @whatyouhide - Allow
--no-compile/--no-check-depsflags formix sentry.package_source_code(#776). — @razielgn - Accept structs as structured logs in
Sentry.LoggerHandler(#780). — @mrdotb - Fix a bug where we were accidentally sending the
:integration_metafield (116140d6). — @whatyouhide - Reduce memory usage of source code maps (#777). — @whatyouhide
10.7.0
Various fixes & improvements
New features:
- Add
Sentry.ClientErrorfor more structured client errors. You can use this to programmatically deal with errors when reporting events, if you need to. — @savhappy - Add
:integration_metakey toSentry.Event. — (#771) by @savhappy - Validate Sentry options even if DSN is not set. — (#772) by @savhappy
Bug fixes:
- Fix Sentry check-ins by internally mapping check-in IDs for "start" and "stop" events. — @savhappy
- Fix
mix sentry.package_source_codeedge cases by compiling code before running the task. — @whatyouhide - Support structured logs in
Sentry.LoggerHandler. — (#765) by @martosaur - Handle
nilenvironment correctly in Sentry config — (#753) by @fahchen - Fix exceptions with an empty stacktrace. — (#755) by @savhappy
10.6.2
Various fixes & improvements
- Fix on_mount LiveView hook when given :not_mounted_at_router (#742) by @savhappy
- Strengthen some Logger tests (#743) by @whatyouhide
- Show contributors on README (#741) by @stephanie-anderson
- Add :bandit to list of ignored logger domains (#739) by @mtrudel
10.6.1
Various fixes & improvements
- Only fetch LiveView socket info if root (#734) by @whatyouhide
10.6.0
Various fixes & improvements
- Add overload protection to
:loggerhandler (#727). - Expose DSN via new
Sentry.get_dsn/0(#731). - Fix a bug with nameless Quantum cron jobs support in the Quantum integration.
10.5.0
Various fixes & improvements
- Improve resilience of looking at Retry-After (ab7fbb96) by @whatyouhide
- Fix compilation error (cf93d226) by @whatyouhide
- Honor Retry-After responses from Sentry (5bad4b56) by @whatyouhide
- Improve "GenServer terminating" reports (#723) by @whatyouhide
- Don't report empty stacktraces (bed583f5) by @whatyouhide
- Add LiveView hook (#722) by @whatyouhide
- FIx monitor slug in Oban + Quantum integrations (#721) by @whatyouhide
10.4.0
Various fixes & improvements
- Add rate-limiting to
Sentry.LoggerHandler. - Improve reporting of process crashes in
Sentry.LoggerHandler. - Fix loading configuration in
mix sentry.send_test_event. - Fix JSON libraries that raise errors when encoding.
- Allow
Sentry.LoggerBackendandSentry.LoggerHandlerto use Sentry metadata. - Validate configuration passed to
Sentry.LoggerHandler.
10.3.0
Various fixes & improvements
- Fix compilation warning (83a727a3) by @whatyouhide
- Move some integrations-related modules around (8eeca145) by @whatyouhide
- Add integrated support for capturing Oban errors (#705) by @whatyouhide
10.2.1
Various fixes & improvements
- Fix automatic start integrations (#704) by @vshev4enko
- Fix wrong CLI argument in CI (#701) by @vshev4enko
- Update changelog (d6da0fbe) by @whatyouhide
10.2.0
New features
- Add support for Sentry Cron monitoring, with built-in support for Oban and Quantum.
- Add
Sentry.capture_check_in/1, which can be used to manually check-in crons. - Add
--outputflag for themix sentry.package_source_codetask. This can be useful for read-only build environments. - Introduce testing helpers in
Sentry.Test. - Add the
:url_scrubberoption toSentry.PlugContext.
Various fixes & improvements
- Improve error message on unavailable config.
10.1.0
Various fixes & improvements
- Add
Sentry.Interfaces.Threadto fix stacktraces in messages. - Add the
--typeand--no-stacktraceflags tomix sentry.send_test_message. - Add support for interpolating messages (with
%s) placeholders. SeeSentry.capture_message/2. - Add support for attachments; see
Sentry.AttachmentandSentry.Context.add_attachment/1.
10.0.3
Various fixes & improvements
- No "app.config" in "mix sentry.package_source_code" (#661) by @whatyouhide
- Add upgrade guide links to the changelog (#659) by @axelson
10.0.2
Various fixes & improvements
- Fix infinite logging loop (#657) by @whatyouhide
- Remove reference to "before_send_event" in README (f1650502) by @whatyouhide
- Don't report events if DSN is not configured (#655) by @whatyouhide
10.0.1
Various fixes & improvements
- Fix reading of config in "mix sentry.package_source_code" (#653)
- Don't ship Dialyzer PLTs with releases (#654)
10.0.0
:report_depsnow reports all loaded applications at the time the:sentryapplication starts. This is not a compile-time configuration option anymore.- Add the
mix sentry.package_source_codeMix task. See the upgrade guide for more information. - Add
~r"/test/"to the default source code exclude patterns (see the:source_code_exclude_patternsoption). :environment_namenow defaults toproduction(if it wasn't configured explicitly and if theSENTRY_ENVIRONMENTenvironment variable is not set).- Hard-deprecate
:included_environments. To control whether to send events to Sentry, use the:dsnconfiguration option instead.:included_environmentsnow emits a warning if used, but will still work until v11.0.0 of this library. - Hard-deprecate
:before_send_eventin favor of the new:before_send. This brings this SDK in line with all other Sentry SDKs.
9.1.0
Various fixes & improvements
- Attempt to scrub all
Plug.Conns inSentry.PlugCapture(#619) by @whatyouhide - Fix typespec for the
Sentry.Context.t/0type (#618) by @whatyouhide - Apply
:sample_rateafter event callbacks, rather than before (ab5c7485) by @whatyouhide
9.0.0
Breaking changes
- Removed
Sentry.Sources - Removed
Sentry.Client, as it's an internal module - Removed the
Sentry.Event.sentry_exception/0type - Removed
Sentry.Event.add_metadata/1 - Removed
Sentry.Event.culprit_from_stacktrace/1 - Removed
Sentry.Event.do_put_source_context/3 - Removed the
:asyncvalue for the:resultoption inSentry.send_event/2(and friends) - Removed
Sentry.CrashError— now, crash reports (detected throughSentry.LoggerBackend) that do not contain exceptions are reported as messages in Sentry - Changed the shape of the
Sentry.Eventstruct - check out the new fields (and typespec forSentry.Event.t/0)
Various fixes & improvements
- Add
Sentry.LoggerHandler, which is a:loggerhandler rather than aLoggerbackend - Make the
Sentry.HTTPClient.child_spec/0callback optional - Add
:allas a possible value of the:metadataconfiguration option forSentry.LoggerBackend - Add
:allas a possible value for the:included_environmentconfiguration option - Add
Sentry.Interfaceswith all the child modules, which are useful if you're working directly with the Sentry API - Fix an issue with JSON-encoding non-encodable terms (such as PIDs, which are pretty common)
Deprecations
- Soft-deprecate
Sentry.EventFilterin favour of:before_send_eventcallbacks.
Various fixes & improvements
- Remove manually-entered entries from the CHANGELOG (48cf37d9) by @whatyouhide
- Don't cover test/support in tests (8cfe14b1) by @whatyouhide
- Make two more funs private in Sentry.Event (340ba143) by @whatyouhide
- Add excoveralls for code coverage (58d94cf2) by @whatyouhide
- Clean up Sentry.Config (f996c7d3) by @whatyouhide
- Revert default :included_environments to [:prod] (d33bf19d) by @whatyouhide
- Send async events right away without queueing (#612) by @whatyouhide
- Make Sentry.Interfaces.Request a struct (#611) by @whatyouhide
- Improve some tests (59e8ebb0) by @whatyouhide
- Add Sentry logo to the docs (6d27eacf) by @whatyouhide
- Polish docs for "mix sentry.send_test_event" (903aeb93) by @whatyouhide
- Update changelog and error messages (f6f577f4) by @whatyouhide
- Soft-deprecate Sentry.EventFilter (#608) by @whatyouhide
- Improve Sentry.Event struct definition (#609) by @whatyouhide
- Clean up docs and tests for "mix sentry.send_test_event" (#610) by @whatyouhide
- Add Sentry.LoggerHandler (#607) by @whatyouhide
- Remove Sentry.CrashError and improve EXIT reporting (#606) by @whatyouhide
- Support :all in Sentry.LoggerBackend's :metadata (#605) by @whatyouhide
- Optimize JSON sanitization step (b96d6cfd) by @whatyouhide
- Accept all environments by default (#604) by @whatyouhide
- Add example about alternative HTTP client to docs (38e80edf) by @whatyouhide
- Make Sentry.HTTPClient.child_spec/0 optional (#603) by @whatyouhide
- Clean up a bunch of little non-important things (18e83ae9) by @whatyouhide
- Simplify test GenServer (30a9828e) by @whatyouhide
8.1.0
Various fixes & improvements
- Bump min craft version to 1.4.2 (795bfd12) by @sl0thentr0py
- Add github target to craft (ef563cc5) by @sl0thentr0py
- Bump min craft version (56516be2) by @sl0thentr0py
- Improve deprecation of Sentry.Config.root_source_code_path/0 (#558) by @whatyouhide
- Wrap HTTP requests in try/catch (#515) by @ruslandoga
- Remove extra config files (#556) by @yordis
- Remove use of deprecated Mix.Config (#555) by @whatyouhide
- Add release/** branches to ci for craft (dfaffb9f) by @sl0thentr0py
- Fix typo in moduledoc (#534) by @louisvisser
- Check :hackney application when starting (#554) by @whatyouhide
- feat(event): filter more exceptions by default (#550) by @gpouilloux
- Fix example configuration for Sentry.Sources (#543) by @scudelletti
- Use module attribute for dictionary key consistently (#537) by @tmecklem
- Fix send_event/2 typespec (#545) by @ruslandoga
- Update badges in the README (#548) by @ruslandoga
- Update ex_docs to 0.29+ (#549) by @ruslandoga
- Fix Elixir 1.15 warnings (#553) by @dustinfarris
- Add :remote_address_reader PlugContext option (#519) by @michallepicki
- Traverse full domain list when checking for excluded domains (#508) by @martosaur
- Add craft with target hex (#532) by @sl0thentr0py
- Add Sentry to LICENSE (#530) by @sl0thentr0py
- Update ci setup-beam action name (#531) by @sl0thentr0py
- allow logging from tasks (#517) by @ruslandoga
- Improve DSN parsing and Endpoint building (#507) by @AtjonTV
Plus 14 more
8.0.6 (2021-09-28)
- Bug Fixes
- Remove function that disables non-group leader logging (#467)
- Handle :unsampled events in
Sentry.send_test_event(#474) - Fix dialyzer reporting unmatched_return for Sentry.PlugCapture (#475)
- Use correct
Plug.Parsersexception module (#482)
8.0.5 (2021-02-14)
Enhancements
- Support lists in scrubbing (#442)
- Send Sentry reports on uncaught throws/exits (#447)
Bug Fixes
- Deprecate
Sentry.Config.in_app_module_whitelistin favor ofSentry.Config.in_app_module_allow_list(#450) - Update outdated
Sentry.Plugdocumentation (#452) - Update
Sentry.HTTPClientdocumentation (#456)
- Deprecate
8.0.4 (2020-11-16)
- Bug Fixes
- Do not read DSN config at compile time (#441)
8.0.3 (2020-11-11)
Enhancements
- Update package & docs configuration (#432)
- Add Plug.Status filter example (#433)
- Support multiple source code root paths in Sentry.Sources (#437)
Bug Fixes
- Fix dialyzer reporting unmatched_return for Sentry.PlugCapture (#436)
- Align Sentry event levels with Elixir logging levels (#439)
8.0.2 (2020-09-06)
- Enhancements
- Log error when JSON is unencodable (#429)
- Set logger event level to logger message level (#430)
- Limit breadcrumbs on add_breadcrumb (#431)
8.0.1 (2020-08-08)
- Enhancements
- Add plug parsing errors to list of default excluded params (#414)
- Make Sentry.PlugContext.scrub_map public (#417)
- Allow users to configure maximum number of breadcrumbs (#418)
8.0.0 (2020-07-13)
- Bug Fixes
- Fix documentation for
Sentry.PlugContext(#410)
- Fix documentation for
8.0.0-rc.2 (2020-07-01)
- Bug Fixes
- Fix trying to transform erlang error coming from PlugCapture (#406)
8.0.0-rc.1 (2020-06-29)
- Bug Fixes
- Remove changes that were unintentionally included in build
8.0.0-rc.0 (2020-06-24)
Enhancements
- Cache environment config in application config (#393)
- Allow configuring LoggerBackend to send all messages, not just exceptions (e.g.
Logger.error("I am an error message"))
Bug Fixes
- fix request url port in payloads for HTTPS requests (#391)
Breaking Changes
- Change default
included_environmentsto only include:prodby default (#370) - Change default event send type to :none instead of :async (#341)
- Make hackney an optional dependency, and simplify Sentry.HTTPClient behaviour (#400)
- Use Logger.metadata for Sentry.Context, no longer return metadata values on set_* functions, and rename
set_http_contexttoset_request_context(#401) - Move excluded exceptions from Sentry.Plug to Sentry.DefaultEventFilter (#402)
- Remove Sentry.Plug and Sentry.Phoenix.Endpoint in favor of Sentry.PlugContext and Sentry.PlugCapture (#402)
- Remove feedback form rendering and configuration (#402)
- Logger metadata is now specified by key in LoggerBackend instead of enabled/disabled (#403)
- Require Elixir 1.10 and optionally plug_cowboy 2.3 (#403)
Sentry.capture_exception/1now only accepts exceptions (#403)
- Change default
7.2.4 (2020-03-09)
- Enhancements
- Allow configuring gather feedback form for Sentry.Plug errors (#387)
7.2.3 (2020-02-27)
- Enhancements
- Allow gathering feedback from Sentry.Plug errors (#385)
7.2.2 (2020-02-13)
- Bug Fixes
- Ensure stacktrace is list in LoggerBackend (#380)
7.2.1 (2019-12-05)
- Bug Fixes
- Improve documentation for
Sentry.Client.send_event/2(#367) - Fix potential Logger deadlock (#372)
- Pass the same exception for NoRouteError in
Sentry.Phoenix.Endpoint(#376) - Handle new MFA for duplicate Plug errors (#377)
- Update docs to recommend using application environment config for adding
Sentry.LoggerBackend(#379)
- Improve documentation for
7.2.0 (2019-10-23)
Enhancements
- Allow filtering of Events using
before_send_event(#364)
- Allow filtering of Events using
Bug Fixes
- Remove newline from Logger for API error (#351)
- Add docs for Sentry.Context (#352)
- Avoid error duplication for Plug errors (#355)
- Fix issue in Sentry.Sources docs around recompilation (#357)
7.1.0 (2019-06-11)
Enhancements
- Option to include
Logger.metadatainSentry.LoggerBackend(#338) - Send maximum length of args in stacktrace (#340)
- Fix dialyzer warning when using Sentry.Phoenix.Endpoint (#344)
- Option to include
Bug Fixes
- Fix documentation error relating to File.cwd!() (#346)
- Add parens to File.cwd!() in documentation (#347)
- Check that DSN is binary (#348)
7.0.6 (2019-04-17)
- Enhancements
- Allow configuring Sentry log level (#334)
7.0.5 (2019-04-05)
- Bug Fixes
- Strip leading "Elixir." from module name on error type (#330)
7.0.4 (2019-02-12)
- Bug Fixes
- Do not error if you cannot format the remote IP or port (#326)
7.0.3 (2018-11-14)
- Bug Fixes
- Fix issue from using spawn_link stacktrace (#315)
- Relax plug_cowboy versions (#314)
7.0.2 (2018-11-01)
- Bug Fixes
- Fix sending Phoenix.Router.NoRouteError when using Sentry.Phoenix.Endpoint (#309)
7.0.1 (2018-10-01)
- Enhancements
- Remove Poison from applications list (#306)
7.0.0 (2018-09-07)
Enhancements
- Implement
Sentry.LoggerBackend
- Implement
Breaking Changes
- Replace Poison with configurable JSON library
- Require Elixir 1.7+
- Remove
Sentry.Logger
6.4.2 (2018-09-05)
- Enhancements
- Add deps reporting back (#305 / #301)
6.4.1 (2018-07-26)
- Bug Fixes
- Remove UUID dependency (#298)
- Fix link in documentation (#300)
6.4.0 (2018-07-02)
Enhancements
- Add documentation detail around including source code (#287)
- Document fingerprinting (#288)
- Document
Sentry.Context(#289) - Add CONTRIBUTING.md (#290)
- Document cookie scrubber (#291)
- Document testing with Sentry (#292)
Bug Fixes
- Change
report_depsdefault value to false to avoid compiler bug (#285) - Limit size of messages (#293)
- Use
elixir_uuidinstead ofuuid(#295)
- Change
6.3.0 (2018-06-26)
Enhancements
- Use the stacktrace passed to Sentry.Event.transform_exception/2 when calling Exception.normalize/3 (#266)
- Reduce Logger noise in HTTP Client (#274)
- Use
Plug.Conn.get_peer_data/1(#273)
Bug Fixes
- Add documentation for capturing arbitrary events (#272)
- Fix typo in README.md (#277)
6.2.1 (2018-04-24)
- Enhancements
- Accept public key DSNs (#263)
6.2.0 (2018-04-04)
- Enhancements
- Allow overriding in Sentry.Plug (#261)
- Implement Sentry.Phoenix.Endpoint to capture errors in Phoenix.Endpoint (#259)
- Bug Fixes
- Fix sending events from remote_console (#262)
- Add filter option to configuration table in README (#255)
- Default to not sending cookies, but allow configuration to send (#254)
- Do not raise on invalid DSN (#218)
6.1.0 (2017-12-07)
- Enhancements
- Elixir 1.6.0 formatted (#246)
- Improve documentation around source code compilation (#242)
- Update typespecs (#249)
- Report errors from :kernel.spawn processes (#251)
- Bug Fixes
- Fix doc typos (#245)
- Remove Sentry.Event compile warning (#248)
- Fix enable_source_code_context configuration (#247)
6.0.5 (2017-12-07)
- Enhancements
- Improve README documentation (#236)
- Fix GenEvent warning (#237, #239)
- Bug Fixes
- Fix error_type reported in Sentry.Plug (#238)
6.0.4 (2017-11-20)
- Enhancements
- Allow string for included_environments by splitting on commas (#234)
- Bug Fixes
- Handle :error when sending test event (#228)
6.0.3 (2017-11-01)
- Enhancements
- Fix tests for differing versions of Erlang/Elixir (#221)
- Bug Fixes
- Fix invalid value for stacktrace via Event rendering layer (#224)
6.0.2 (2017-10-03)
- Enhancements
- Improve Sentry.Logger documentation (#217)
- Bug Fixes
- Handle Plug.Upload during scrubbing (#208)
- Do not check DSN for source_code_path_pattern configuration (#211)
- Fix culprit ambiguity (#214)
6.0.1 (2017-09-06)
- Bug Fixes
- Fix filters and test mix task (#206)
- Enhancements
- Improve README clarity (#202)
6.0.0 (2017-08-29)
See these 5.0.0 to 6.0.0 upgrade instructions to update your existing app.
- Breaking Changes
- Remove use_error_logger configuration (#196)
- enable_source_code_context is no longer required configuration (#201)
- Bug Fixes
- Fix README error (#197)
- Prevent overwriting server_name option (#200)
- Enhancements
- Scrubbing of nested maps (#192)
- Allow Hackney 1.9 and later (#199)
5.0.1 (2017-07-18)
- Bug Fixes
- Fix logger and context usage (#185)
5.0.0 (2017-07-10)
- Backward incompatible changes
- Allow specifying sync/async/none when getting result of sending event (#174)
- Enhancements
- Modules (#182)
- Config from system and DSN (#180)
- App Frames (#177)
- Sampling (#176)
- Post event hook (#175)
- Improve documentation around recompilation for source code context (#171)
- Use better arity logic in stacktraces (#170)
- Allow custom fingerprinting (#160)
- Bug Fixes
- Fix README typo (#159)
- Fix the backoff to really be exponential (#162)
4.0.3 (2017-05-17)
- Enhancements
- Update and improve Travis build matrix (#155)
- Specify behaviour for Sentry HTTP clients (#158)
4.0.2 (2017-04-26)
- Enhancements
- Relax hackney requirements
4.0.1 (2017-04-25)
- Enhancements
- Bump hackney to a version that fixes major bug (#153)
4.0.0 (2017-04-20)
See these 3.0.0 to 4.0.0 upgrade instructions to update your existing app.
- Enhancements
- Bump hackney to a version that isn't retired (#135)
- Improve Logger reporting (#136)
- Accept keyword lists in
Sentry.Context.add_breadcrumb/1(#139) - Add elements to beginning of breadcrumbs list for performance (#141)
- Close unread hackney responses properly (#149)
- Improve
Sentry.Clientcode style (#147) - Fix invalid specs in
Sentrymethods (#146) - Allow setting client at runtime (#150)
- Backward incompatible changes
- Return
:ignoredinstead of{:ok, ""}when event is not sent because environment_name is not in included_environments inSentry.send_event,Sentry.capture_exception, orSentry.capture_message(#146) - Return
:ignoredand log warning instead of returning{:ok, "Sentry: unable to parse exception"}when unable to parse exception inSentry.send_event,Sentry.capture_exception, orSentry.capture_message(#146) - Return
{:ok, Task}instead ofTaskwhen an event is successfully sent withSentry.send_event,Sentry.capture_exception, orSentry.capture_message(#146) - Ignore non-existent route exceptions (#110)
- Sending source code as context when reporting errors (#138)
- Return
3.0.0 (2017-03-02)
- Enhancements
- Add dialyzer support (#128)
- Backward incompatible changes
- Fix default configuration (#124)
- Start and use separate Sentry hackney pool instead of default (#130)
- Return
:errorinstead of raising when encoding invalid JSON (#131)
2.2.0 (2017-02-15)
- Enhancements
- Allow setting
hackney_opts - Add
Sentry.capture_message/1 - Allow reading
:dsnfrom System at runtime by configuring as{:system, "ENV_VAR"}
- Allow setting
2.1.0 (2016-12-17)
Enhancements
- Allow filtering which exceptions are sent via
Sentry.EventFilterbehaviour - Add
Sentry.Context.set_http_context/1
- Allow filtering which exceptions are sent via
Bug Fixes
- Fix usage of deprecated modules
- Fix README documentation
- Fix timestamp parameter format
2.0.2 (2016-12-08)
- Bug Fixes
- Fix regex checking of non-binary values
2.0.1 (2016-12-05)
- Bug Fixes
- Fix compilation error when Plug is not available
2.0.0 (2016-11-28)
Enhancements
- Return a task when sending a Sentry event
- Provide default scrubber for request body and headers (
Sentry.Plug.default_body_scrubberandSentry.Plug.default_header_scrubber) - Header scrubbing can now be configured with
:header_scrubber
Bug Fixes
- Ensure
mix sentry.send_test_eventfinishes sending event before ending Mix task
- Ensure
Backward incompatible changes
Sentry.capture_exception/1now returns aTaskinstead of{:ok, PID}- Sentry.Plug
:scrubberoption has been removed in favor of the more descriptive:body_scrubberoption, which defaults to newly addedSentry.Plug.default_scrubber/1 - New option for Sentry.Plug
:header_scrubberdefaults to newly addedSentry.Plug.default_header_scrubber/1 - Request bodies were not previously sent by default. Because of above change, request bodies are now sent by default after being scrubbed by default scrubber. To prevent sending any data,
:body_scrubbershould be set tonil