Есть ли способ, которым Coldfusion может отправить все ошибки на конкретное письмо?
Я имею:
Детали сервера
Серверный продукт ColdFusion
Версия 9,0,1,274733
Издание Стандарт
Операционная система Windows Server 2008
Версия ОС 6.0
Adobe Driver Version 4.0 (сборка 0005)
Возможно ли, что я могу получить все ошибки, которые происходят при Coldfusion, на конкретное письмо?
2 ответа
Если вы не хотите добавлять cferror на каждую страницу, вы можете добавить метод onError в ваше application.cfc, эта функция будет вызываться всякий раз, когда на любой странице возникает ошибка.
<cffunction name="onError">
<!--- The onError method gets two arguments:
An exception structure, which is identical to a cfcatch variable.
The name of the Application.cfc method, if any, in which the error
happened. --->
<cfargument name="Except" required="true"/>
<cfargument type="String" name = "EventName" required="true"/>
error handling goes here
</cffunction>
Я также видел, что у вас есть вопрос, где вы беспокоитесь о том, что почтовый сервер не работает. Если вы обеспокоены тем, что не сможете получать электронные письма о своих ошибках, вы можете записать их в файл.
<!--- Log all errors in an application-specific log file. --->
<cflog file="filename" type="error" text="Event Name: #Eventname#" >
<cflog file="filename" type="error" text="Message: #except.message#">
Проверьте тег cferror. Это именно то, что вам нужно.
Вы можете положить cferror
в файле Application.cfm, если вы не используете Application.cfc, и он будет работать на каждой странице.
<cferror type="exception"
template="/error.cfm"
mailto="[email protected]"
exception="any">
Это рекомендуемый способ по электронной почте уведомлять об ошибках предварительно CFMX7. Он все еще работает в CFMX7 и после, но лучшие практики предлагают использовать метод onError() Application.cfc