@@ -292,7 +292,30 @@ def test_logging_errors(sentry_init, capture_envelopes):
292292 envelopes = capture_envelopes ()
293293
294294 python_logger = logging .Logger ("test-logger" )
295- python_logger .error (Exception ("test exc" ))
296- python_logger .error ("error is %s" , Exception ("test exc" ))
295+ python_logger .error (Exception ("test exc 1" ))
296+ python_logger .error ("error is %s" , Exception ("test exc 2" ))
297+
298+ error_event_1 = envelopes [0 ].items [0 ].payload .json
299+ assert error_event_1 ["level" ] == "error"
300+
301+ log_event_1 = envelopes [1 ].items [0 ].payload .json
302+ assert log_event_1 ["severityText" ] == "error"
303+ # If only logging an exception, there is no "sentry.message.template" or "sentry.message.parameters.0"
304+ assert len (log_event_1 ["attributes" ]) == 10
305+ assert log_event_1 ["attributes" ][0 ]["key" ] == "code.line.number"
306+
307+ error_event_2 = envelopes [2 ].items [0 ].payload .json
308+ assert error_event_2 ["level" ] == "error"
309+
310+ log_event_2 = envelopes [3 ].items [0 ].payload .json
311+ assert log_event_2 ["severityText" ] == "error"
312+ assert len (log_event_2 ["attributes" ]) == 12
313+ assert log_event_2 ["attributes" ][0 ]["key" ] == "sentry.message.template"
314+ assert log_event_2 ["attributes" ][0 ]["value" ] == {"stringValue" : "error is %s" }
315+ assert log_event_2 ["attributes" ][1 ]["key" ] == "sentry.message.parameters.0"
316+ assert log_event_2 ["attributes" ][1 ]["value" ] == {
317+ "stringValue" : "Exception('test exc 2')"
318+ }
319+ assert log_event_2 ["attributes" ][2 ]["key" ] == "code.line.number"
297320
298321 assert len (envelopes ) == 4
0 commit comments