#coldfusion #coldfusion-9
#coldfusion #coldfusion-9
Вопрос:
У меня есть:
Сведения о сервере
Серверный продукт ColdFusion
Версии 9,0,1,274733
издание Стандартная
операционная система Windows Server 2008
Версия ОС 6.0
Adobe Driver версии 4.0 (сборка 0005)
Возможно ли, что я могу получать все ошибки, которые происходят в coldfusion, на определенное электронное письмо?
Ответ №1:
Если вы не хотите добавлять ошибку cferror на каждую страницу, вы можете добавить метод onError в свое приложение.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#">
Комментарии:
1. Хороший ответ. Именно то, что я бы сказал. @user3591637 Просто чтобы добавить к этому, если вы беспокоитесь о cfmail, пользовательский интерфейс для журналов можно найти в CFAdmin, в разделе «Отладка и ведение журнала», чтобы также проверять журналы ошибок.
Ответ №2:
Проверьте тег cferror . Это именно то, что вам нужно.
Вы можете поместить cferror
файл Application.cfm, если вы не используете Application.cfc, и он будет работать на каждой странице.
<cferror type="exception"
template="/error.cfm"
mailto="your@email.com"
exception="any">
Это рекомендуемый способ уведомления об ошибках по электронной почте до CFMX7. Он по-прежнему работает в CFMX7 и после, но лучшая практика предлагает использовать метод применения onError().cfc
Комментарии:
1. я действительно получил что-то, что отправляет мне электронное письмо с сообщением об ошибке, но для определенной страницы, мне просто интересно, могу ли я что-то сделать в coldfusion, чтобы мне не нужно было помещать cferror на каждую страницу?
2. Взгляните на метод применения onError().cfc: wikidocs.adobe.com/wiki/display/coldfusionen/onError
3. Привет, Рэнди. Мой голос поставил вашу репутацию выше 100. Ты должен мне пиво.
4. TBH Я думаю, что предлагать использовать
<cferror>
версии ColdFusion после CFMX6 — плохой совет. Следует использовать Application.cfc иonError()
, как предлагает @CarlVonStetten.