У меня есть azure функция, которая содержит некоторые логики c с довольно простой c try catch (код сокращен для краткости)
try {
// do logic here that can potentially fail
} catch (ex) {
context.log(`Log details about the exception: ${ex.message}`);
context.res = {
status: 500,
headers: {
"Content-Type": "application/json"
},
body: {
message: ex.message
}
};
return;
}
Так что в случае исключения во время этой логики c я обрабатываю исключение и изящно возвращаюсь в ответе http и завершаю работу приложения. Я ожидаю, что функции azure будут рассматривать 500 кодов состояния как сбой (учитывая, что они являются внутренними ошибками сервера), но моя функция все еще считается успешно выполненной. Учитывая, что это функция с низким уровнем громкости и несколько важная для ее контекста, я должен был получать уведомления обо всех сбоях.
Что такое разумная ошибка? Я выбрасываю исключение вместо простого возврата?