Мы на самом деле tail -f
регистрируем журнал ошибок php сервера для различных выходных данных, но также вылавливаем много исключений, которые мы выбрасываем сами. Вызывая пользовательское исключение, вы можете сделать так, чтобы (в зависимости от приоритета, конечно) он записывал в вашу базу данных, поток журналов, отслеживание ошибок и / или отправлял сообщения тем, кто отвечает за этот модуль. Конечно, вы должны регистрировать, почему возникло исключение (например, var_export()
/ serialize()
func_get_args()
метода, в который вы сгенерировали исключение. Сделайте сообщение об исключении огромный , так как оно сохранит вы.
В дополнение к этому, мы используем Zend_Log
, где исключения являются немного избыточными (например, если аргумент, данный методу, должен быть признан устаревшим, мы могли бы записать в бит debug_backtrace()
, чтобы увидеть откуда поступил этот вызов. Это может быть распространено на программы, создающие графики дорогостоящих вызовов и т. д., но это sidenote:)
Мой лучший совет: знаю, где может произойти сбой вашего приложения, а где нет , гораздо проще найти эту ошибку. Убедитесь, что ошибки, возникающие на основе внешних служб, интерпретируются как таковые.
... и, честно говоря, я думаю, что такое мышление (Error-API / -Service на уровне приложения) немного странно: как можно предотвратить ошибку, если вы точно знаете, как с ней справиться? Разве вы не избежите / не автоматизируете это?