@@ -111,11 +111,29 @@ def test_logs_basics(sentry_init, capture_envelopes):
111111 assert logs [5 ].get ("severity_number" ) == 21
112112
113113
114+ @minimum_python_37
115+ def test_logs_experimental_option_still_works (sentry_init , capture_envelopes ):
116+ sentry_init (_experiments = {"enable_logs" : True })
117+ envelopes = capture_envelopes ()
118+
119+ sentry_sdk .logger .error ("This is an error log..." )
120+
121+ get_client ().flush ()
122+
123+ logs = envelopes_to_logs (envelopes )
124+ assert len (logs ) == 1
125+
126+ assert logs [0 ].get ("severity_text" ) == "error"
127+ assert logs [0 ].get ("severity_number" ) == 17
128+
129+
114130@minimum_python_37
115131def test_logs_before_send_log (sentry_init , capture_envelopes ):
116- before_log_called = [ False ]
132+ before_log_called = False
117133
118134 def _before_log (record , hint ):
135+ nonlocal before_log_called
136+
119137 assert set (record .keys ()) == {
120138 "severity_text" ,
121139 "severity_number" ,
@@ -128,15 +146,13 @@ def _before_log(record, hint):
128146 if record ["severity_text" ] in ["fatal" , "error" ]:
129147 return None
130148
131- before_log_called [ 0 ] = True
149+ before_log_called = True
132150
133151 return record
134152
135153 sentry_init (
136- _experiments = {
137- "enable_logs" : True ,
138- "before_send_log" : _before_log ,
139- }
154+ enable_logs = True ,
155+ before_send_log = _before_log ,
140156 )
141157 envelopes = capture_envelopes ()
142158
@@ -155,7 +171,37 @@ def _before_log(record, hint):
155171 assert logs [1 ]["severity_text" ] == "debug"
156172 assert logs [2 ]["severity_text" ] == "info"
157173 assert logs [3 ]["severity_text" ] == "warn"
158- assert before_log_called [0 ]
174+ assert before_log_called is True
175+
176+
177+ @minimum_python_37
178+ def test_logs_before_send_log_experimental_option_still_works (
179+ sentry_init , capture_envelopes
180+ ):
181+ before_log_called = False
182+
183+ def _before_log (record , hint ):
184+ nonlocal before_log_called
185+ before_log_called = True
186+
187+ return record
188+
189+ sentry_init (
190+ enable_logs = True ,
191+ _experiments = {
192+ "before_send_log" : _before_log ,
193+ },
194+ )
195+ envelopes = capture_envelopes ()
196+
197+ sentry_sdk .logger .error ("This is an error log..." )
198+
199+ get_client ().flush ()
200+ logs = envelopes_to_logs (envelopes )
201+ assert len (logs ) == 1
202+
203+ assert logs [0 ]["severity_text" ] == "error"
204+ assert before_log_called is True
159205
160206
161207@minimum_python_37
0 commit comments