fix: pass in slack error messages properly (#22727)
This commit is contained in:
parent
08078753b7
commit
c58dbf8b9c
|
|
@ -192,10 +192,14 @@ Error: %(text)s
|
||||||
SlackRequestError,
|
SlackRequestError,
|
||||||
SlackClientConfigurationError,
|
SlackClientConfigurationError,
|
||||||
) as ex:
|
) as ex:
|
||||||
raise NotificationParamException from ex
|
raise NotificationParamException(str(ex)) from ex
|
||||||
except SlackObjectFormationError as ex:
|
except SlackObjectFormationError as ex:
|
||||||
raise NotificationMalformedException from ex
|
raise NotificationMalformedException(str(ex)) from ex
|
||||||
except SlackTokenRotationError as ex:
|
except SlackTokenRotationError as ex:
|
||||||
raise NotificationAuthorizationException from ex
|
raise NotificationAuthorizationException(str(ex)) from ex
|
||||||
except (SlackClientNotConnectedError, SlackClientError, SlackApiError) as ex:
|
except (SlackClientNotConnectedError, SlackApiError) as ex:
|
||||||
raise NotificationUnprocessableException from ex
|
raise NotificationUnprocessableException(str(ex)) from ex
|
||||||
|
except SlackClientError as ex:
|
||||||
|
# this is the base class for all slack client errors
|
||||||
|
# keep it last so that it doesn't interfere with @backoff
|
||||||
|
raise NotificationUnprocessableException(str(ex)) from ex
|
||||||
|
|
|
||||||
|
|
@ -1208,8 +1208,21 @@ def test_slack_chart_report_schedule_with_errors(
|
||||||
).run()
|
).run()
|
||||||
|
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
# Assert errors are being logged)
|
|
||||||
assert get_error_logs_query(create_report_slack_chart).count() == (idx + 1) * 2
|
# Assert errors are being logged
|
||||||
|
|
||||||
|
# Only one notification log is sent because it's in grace period
|
||||||
|
# for the rest of the reports
|
||||||
|
notification_logs_count = get_notification_error_sent_count(
|
||||||
|
create_report_slack_chart
|
||||||
|
)
|
||||||
|
error_logs = get_error_logs_query(create_report_slack_chart)
|
||||||
|
|
||||||
|
# check that we have two logs for each error
|
||||||
|
assert error_logs.count() == (len(slack_errors) + notification_logs_count) * 2
|
||||||
|
|
||||||
|
# check that each error has a message
|
||||||
|
assert len([log.error_message for log in error_logs]) == error_logs.count()
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.usefixtures(
|
@pytest.mark.usefixtures(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue