From a9a2c35f06d2a320a827995e081d04f4c0db0757 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Sat, 29 Aug 2020 11:44:08 +0200 Subject: [PATCH] Sentry send env infos (#1992) --- supervisor/misc/filter.py | 2 ++ tests/misc/test_filter_data.py | 12 +++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/supervisor/misc/filter.py b/supervisor/misc/filter.py index bafac4b7f..c76a0bcb2 100644 --- a/supervisor/misc/filter.py +++ b/supervisor/misc/filter.py @@ -34,6 +34,8 @@ def filter_data(coresys: CoreSys, event: dict, hint: dict) -> dict: if not coresys.config.diagnostics or not coresys.core.supported or dev_env: return None + event.setdefault("extra", {}).update({"os.environ": dict(os.environ)}) + # Not full startup - missing information if coresys.core.state in (CoreState.INITIALIZE, CoreState.SETUP): return event diff --git a/tests/misc/test_filter_data.py b/tests/misc/test_filter_data.py index aceab23f0..eb6dcfcf7 100644 --- a/tests/misc/test_filter_data.py +++ b/tests/misc/test_filter_data.py @@ -1,11 +1,21 @@ """Test sentry data filter.""" +import os from unittest.mock import patch +import pytest + from supervisor.const import SUPERVISOR_VERSION, CoreState from supervisor.exceptions import AddonConfigurationError from supervisor.misc.filter import filter_data -SAMPLE_EVENT = {"sample": "event"} +SAMPLE_EVENT = {"sample": "event", "extra": {"Test": "123"}} + + +@pytest.fixture +def sys_env(autouse=True): + """Fixture to inject hassio env.""" + with patch.dict(os.environ, {"Test": "123"}): + yield def test_ignored_exception(coresys):