elixir-error-tracker / error-tracker

🐛 An Elixir-based built-in error reporting and tracking solution
https://hex.pm/packages/error_tracker
Apache License 2.0
418 stars 18 forks source link

Do not store error if context/occurrence is not valid #66

Closed odarriba closed 3 months ago

odarriba commented 3 months ago

This change solves an issue in which an invalida content of the error context case the Error schema to be stored but not the Occurrence, which means that the error appears on the dashboard list but cannot be opened because the details were not stored.

On this change I change the store procedure to use a DB transaction and ensure that, if something fails, no data is stored and an exception is generated.

I thought about storing that exception ourselves but if the issue is not related to the data stored but other parts of the stack (network, DB, etc) it can end up in an infinite loop.

I have also updated the documentation so it states the requirements needed for the context data to be stored (basically, it has to be convertible to JSON).

Closes #65

jaimeiniesta commented 2 months ago

Hey, that's nice, I just tried to put the whole User struct and I got this, as expected. Good work, thanks!

Captura de pantalla 2024-09-02 a las 16 29 29