有没有办法Coldfusion可以将所有错误发送到特定的电子邮件?

时间:2014-06-19 23:47:31

标签: coldfusion coldfusion-9

我有:

服务器详细信息
服务器产品ColdFusion
版本9,0,1,274733
版标准
操作系统Windows Server 2008
OS版本6.0
Adobe Driver Version 4.0(Build 0005)
我是否有可能在特定电子邮件中收到coldfusion上发生的所有错误?

2 个答案:

答案 0 :(得分:9)

如果您不想向每个页面添加cferror,可以在application.cfc中添加onError方法,只要有任何页面出错,就会调用此函数。

 <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 :(得分:1)

查看cferror标记。这正是你所需要的。

如果您没有使用Application.cfc,可以将cferror放在Application.cfm文件中,它可以在每个页面上使用。

<cferror type="exception" 
      template="/error.cfm" 
      mailto="your@email.com" 
      exception="any"> 

这是在CFMX7之前通过电子邮件发送错误通知的推荐方式。它仍然可以在CFMX7中使用,但最佳实践建议使用Application.cfc的onError()方法

wikidocs.adobe.com/wiki/display/coldfusionen/onError