Рекомендации по управлению ошибками веб-сайта в реальном времени
-
21-09-2019 - |
Вопрос
Я как раз собираюсь впервые запустить довольно большой веб-сайт.Я отключил все сообщения об ошибках в моем php.ini, и сообщения об ошибках теперь записываются в файл "error_log" на моем сервере.
Мой вопрос в том, что теперь, когда ошибки записаны в файл, каковы наилучшие способы, с помощью которых веб-разработчики могут отслеживать, когда / где на веб-сайте возникают ошибки?
На данный момент кажется, что лучшим способом было бы постоянно проверять файл error_log каждый день, однако это не кажется самым эффективным решением.В идеале я бы получал электронное письмо каждый раз, когда возникает ошибка (с сообщением об ошибке).Буду очень признателен за любые советы о том, как я могу быть в курсе ошибок!
Дополнительная информация
Работает на общем сервере (HostMonster)
Веб-сайт, созданный на PHP
Решение
В PHP есть две основные функции, которые помогают улавливать ошибки и исключения.Я предлагаю вам взглянуть на них :
В нашей компании мы обрабатываем все ошибки, возникающие на наших веб-сайтах, с помощью этих функций, определяя наши собственные методы обработки ошибок и исключений.
При возникновении ошибки команде разработчиков отправляется электронное письмо.
Другие советы
Место, где я ранее работал, использовало пользовательское расширение для обработки регистрации ошибок.Это в основном INSERT DELAY
ошибки в базу данных с некоторой дополнительной информацией.Затем был написан отдельный инструмент администрирования, позволяющий легко искать, просматривать, сортировать и вручную сокращать таблицу журналов.
Я рекомендую вам не писать пользовательское расширение, а использовать set_error_handler
метод и вместо этого просто запишите в базу данных.Если база данных недоступна, то запишите ее в файл в качестве резервной копии.Это будет намного проще, чем иметь дело с огромным файлом и одноразовым форматом.
Если хотите, вы также можете отправлять себе по электронной почте ежечасные резюме, но я не советую вам отправлять что-то большее, иначе вы возненавидите себя.
Вы можете написать себе по электронной почте об ошибках, если за последние N часов не было ни одного электронного письма.
Если вы не ожидаете большого количества ошибок, "частный" канал RSS / ATOM может работать хорошо...таким образом, вам не нужно беспокоиться, если вы ничего не получите...но если вы начинаете получать "обновления", вы знаете, что есть проблемы.
Я не знаю, как Hostmonster обрабатывает ротацию журналов, но обычно вы хотите отслеживать размер из вашего файла error_log.Если размер внезапно подскочит, вам определенно нужно что-то проверить, поэтому вы захотите получить электронное письмо с сообщением о том, что размер файла журнала неожиданно подскочил.
Кроме этого, вы можете объединить журналы ошибок в конце недели, отправить их себе по электронной почте и выполнить отладку в выходные.Если ошибка возникает всего несколько раз в неделю, скорее всего, это не так слишком серьезная проблема.