Add option to redact data from exceptions
Hello!
It is useful to be able to redact data values in production environments. This prevents PII and other sensitive data from reaching logging and error reporting systems. It's especially useful for response validation error handling, when the server will typically respond with an HTTP 500 and a generic error message, and an exception reporting tool will receive the raw exception.
This PR adds an option to do this, and modifies all of the exception classes which contain a value to support redacting the value. I also refactored the Options class to pass it around throughout the validation code instead of destructuring it into the individual options it contains. This is a bit more flexible if more options are needed in the future.
👋 Hello! Is there any chance something like this could be incorporated into the gem? I'm happy to rebase it etc if so 😄
cc/ @ota42y @geemus (not sure who all the active maintainers currently are, tagging a few of you!)
@simoleone Hey, thanks for pinging, I think this predated my active involvement so wasn't quite on my radar. I'd be happy to work with you on it if you'd like to rebase it. I'll add some comments and questions now to keep this moving.
Great! Thank you! Will do as soon as I get a free minute 😬