Я внедрил библиотеку PHP против установки Sentry onpremise в проект, который работает отлично, у меня нет проблем с функциональностью, когда он настроен на работу.
То, что я хотел бы сделать, это определить, когда по какой-либо причине фактическая запись часов не удалась, однако изо всех сил пытается найти, где в потоке приложений Sentry возвращает что-то, что можно использовать для определения «успешной записи».
Я вызвал ошибку, изменив адрес DSN, используемый в Raven_Client
создать неверный URL и может подтвердить, что события НЕ записываются — что и ожидается.
Часовой Raven_Client
выставляет метод getLastEventID()
который, кажется, содержит идентификатор при создании самого события, а не при успешной отправке на сервер (который я ожидал, и сделал проверку, чтобы отобразить мою страницу ошибки).
Также есть getLastError()
метод, который является нулевым в момент, когда мое приложение (CodeIgniter) вошло в My_Exceptions::show_exception()
способ отобразить страницу ошибки для клиента.
SentryID заполнен, и ошибка равна нулю, и я не уверен, что еще можно проверить, чтобы узнать, что отчет об ошибке действительно не был записан.
Причина, по которой я хочу сделать это, состоит в том, чтобы я мог показать пользователю другое представление (которое не говорит «Поддержка была уведомлена»; как они не сделали), а также функциональность, чтобы проверить, что $sentryEventId
и показ пользовательской формы обратной связи, очевидно, должен быть скрыт, поскольку sentryEventId недействителен, и обратная связь никуда не денется.
Если вы используете Sentry PHP SDK версии 1.10.0 и не используете какой-либо асинхронный способ отправки событий (по умолчанию), getLastEventID()
будет null
если send
действие не удается.
Смотрите также пиар что ввело это изменение.
Других решений пока нет …