Member 14336548 Ответов: 1

Уровни исключений и ведение журнала


Я должен разработать систему интеграции с различными информационными системами.

В процессе разработки будут возникать случаи, когда потребуется в непредвиденных ситуациях отправлять уведомления по почте, в других случаях записывать информацию в журнал или отправлять SMS в критических ситуациях.

Для регистрации и других уведомлений я выбрал Monolog.

Вопрос в том, как организовать работу с исключениями так, чтобы были разные уровни исключений и выполнялись соответствующие действия (протоколирование и т. д.)?

Я искал информацию в разных источниках, нашел несколько описаний. Некоторые разработчики создают 3 уровневые интерфейсы для исключений:

UnloggedInterface - все необработанные ошибки регистрируются по умолчанию. Этот интерфейс отмечает исключения, которые вообще не нужно регистрировать.

PreloggedInterface — этот интерфейс отмечает исключения, которые все равно нужно регистрировать: не имеет значения, обрабатываются они или нет.

OutableInterface - этот интерфейс помечает исключения, текст которых может быть предоставлен пользователю.

Я не понимаю, какой должна быть иерархия наследования классов исключений?

На каком этапе вам нужно регистрировать исключения? В момент выброса исключений? или во время обработки исключений? а что делать с исключениями, которые не обрабатываются (как их регистрировать?)?

Может понадобиться использовать Monolog\ErrorHandler ? (но я не знаю как) ..

Пожалуйста, скажи мне, как быть? Где я могу увидеть примеры? Или где об этом почитать?

Мне бы очень хотелось понять, как это работает. И посмотрите на примеры правильной работы с включениями.

Также приведите примеры из GitHub.

Я был бы благодарен за любую помощь.

Что я уже пробовал:

I read different sources, did not understand how to put it all together

1 Ответов

Рейтинг:
0

Gerry Schmitz

Этот материал не создается в вакууме.

Обычно возникают "инциденты", которые вызывают необходимость в системе "уведомления".

Вам нужно "поговорить" с тем, кто попросил вас сделать это, и получить несколько "примеров" инцидентов, которые требовали действия и которые были уведомлены.

Вы документируете / понимаете "текущие" процедуры; затем вы можете начать думать об автоматизации / новых процедурах.


Member 14336548

ничего не понимал((