Before this fix, the Sentry module sent events for WARNING-
level logs, even if sentry_logging_level was registered as
"error" or higher.
The fix itself is minor: setup of the integration mistakenly
set the hardcoded WARNING level to the event handler and the
sentry_logging_level to the breadcrumb handler, when they
should have been the other way around.
The largest part of the diff is a reworking of the tests in
order to properly replicate the issue:
* The test previously emitted a fake log event directly using
the integration's handler's emit-method, which skipped the
part of the logic that actually filters based on logging level.
This has been changed to use a bespoke NoopHandler and dedicated
Logger, so that the tests can emit "actual logs" and test Sentry
as accurately as possible.
* The tests were not configured to use a non-default logging level,
thus making it so that none of them caught the fact we were basically
hard-coding the setting to WARNING-level.
The tests now set the logging level to ERROR in order to make sure
the configuration parameter works when it is non-default.
* Changes to configuration (especially ignored loggers) were leaking
from one test into others. The tests were directly mutating the
`odoo.tools.config.options` mapping, without resetting it afterward,
leaving the changes in place for subsequent tests.
Introduced a helper method `patch_config` that can be used to patch
the config object so that the patch is undone at the end of the test.
Odoo requires urllib3 == 1.26.5
e0feda4629/requirements.txt (L56)
sentry-sdk > 1.9.0 required urllib3 >= 1.26.11
4f1f782fbe/setup.py (L43)
Currently, urllib3 >= 1.26.11 is causing the following error in
response.py:
``` Traceback (most recent call last):
"/home/odoo/.local/lib/python3.8/site-packages/urllib3/response.py",
line 705, in _error_catcher
yield
File
"/home/odoo/.local/lib/python3.8/site-packages/urllib3/response.py",
line 830, in _raw_read
raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
urllib3.exceptions.IncompleteRead: IncompleteRead(1501 bytes read, -827
more expected)
```
On the other hand, sentry 1.9.0 supports urllib3 >= 1.10.0, satisfying
odoo requirements.
This partially reverts
d7ae024951.
That was initially introduced to support newer versions of `sentry_sdk`, but won't be required anymore
due to this downgrade.
Currently, version 1.17.0 of sentry_sdk is causing the following error:
SentryOption("with_locals", DEFAULT_OPTIONS["with_locals"], None),
KeyError: 'with_locals'.
Where the with_locals key is not found in the dictionary, generating an
error, stopping the installation of the sentry module.
In version 1.17.0 rename 'with_locals' to 'include_local_variables'
79e33169aa
This commit adjust the get_sentry_options() method in
https://github.com/Vauxoo/server-tools/blob/16.0/sentry/const.py file, set the new variable.
sentry: It is not always possible to read commit information from
a production environment. In those cases it is useful to be able
to set a release version manually.
[UPD] Update sentry.pot