Код: Выделить всё
def main(msg: func.ServiceBusMessage) -> None:
return testable_main(msg=msg)
@failsafe_logger(response_type=ResponseType.AZURE_SERVICE_BUS)
def testable_main(
msg: func.ServiceBusMessage,
handling_ut=None,
) -> None:
mapper = dict(
CREATE=dict(
method=create_subscription,
params=dict(msg=msg),
),
UPDATE=dict(
method=update_subscription,
params=dict(msg=msg),
),
DELETE=dict(
method=delete_subscription,
params=dict(msg=msg),
),
)
product_id = json.loads(msg.get_body().decode("utf-8"))[
"productId"
]
if product_id == os.environ["PRODUCT_ID"]:
event_type = json.loads(msg.get_body().decode("utf-8"))[
"eventType"
]
(handling_ut or mapper[event_type]["method"])(
**mapper[event_type]["params"]
)
Код: Выделить всё
try:
mapper = dict(
CREATE=dict(
method=create_subscription,
params=dict(msg=msg),
),
UPDATE=dict(
method=update_subscription,
params=dict(msg=msg),
),
DELETE=dict(
method=delete_subscription,
params=dict(msg=msg),
),
)
product_id = json.loads(msg.get_body().decode("utf-8"))[
"productId"
]
if product_id == os.environ["PRODUCT_ID"]:
event_type = json.loads(msg.get_body().decode("utf-8"))[
"eventType"
]
(handling_ut or mapper[event_type]["method"])(
**mapper[event_type]["params"]
)
except CustomError as e:
logging.error(f"Custom error: {e}")
raise # Re-raise the same exception
except Exception as e:
logging.error(f"Unexpected error: {e}")
raise # Re-raise any unexpected exceptions
Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/793 ... ion-raised
Мобильная версия