0
我們運行的應用程序沒有出色的電子郵件通知,但最終發生在Coldfusion的application.log中。當這個文件改變時,Coldfusion是否有辦法發送電子郵件,這是一個錯誤(不僅僅是會話輪換或其他信息級別的日誌條目)?來自Coldfusion Administrator的電子郵件錯誤報告
我們運行的應用程序沒有出色的電子郵件通知,但最終發生在Coldfusion的application.log中。當這個文件改變時,Coldfusion是否有辦法發送電子郵件,這是一個錯誤(不僅僅是會話輪換或其他信息級別的日誌條目)?來自Coldfusion Administrator的電子郵件錯誤報告
這不是解決方案,但它可能會讓你朝着正確的方向前進。我沒有在CF上看過錯誤日誌文件和電子郵件 - 你想設置一個計劃任務來檢查它。但我會說500型的服務器錯誤是我身邊的刺,因爲IIS不想將錯誤傳遞給CF來處理。這裏是我用來打開錯誤日誌,到達底部並向後工作以顯示500型錯誤的頁面。這是不是非常強勁,但它確實讓我回顧我過去的錯誤不會收到通知:
<cffile action="read" variable="exceptionLog" file="C:\ColdFusion10\cfusion\logs\exception.log">
<cfparam name="form.goBack" default="0">
<cfparam name="form.showHowMany" default="10">
<cfif structKeyExists(url,"goback") and structKeyExists(url,"showHowMany")>
<cfset form.goBack=url.goback>
<cfset form.showHowMany=url.showHowMany>
</cfif>
<cfoutput>
<cfset bodyAttr=' style="font-family:arial;font-size:10pt;font-weight:normal;"'>
<cfinclude template="../html_header.cfm">
<form name="f" id="f" action="cfexception.cfm" method="post">
Go back<input name="goBack" id="goBack" class="intgr" size="4" value="#form.goBack#">
Show how many<input name="showHowMany" id="showHowMany" class="intgr" size="4" value="#form.showHowMany#">
<input type="button" value="Go" id="btnSbmt">
</form>
<script type="text/javascript">
$(document).ready(function(){
$("input.intgr").keyup(function (e) { // Filter non-digits from input value.
if (/\D/g.test($(this).val())) $(this).val($(this).val().replace(/\D/g, ''));
});
$("##btnSbmt").click(function(){
if($("##goBack").val()=="" || $("##goBack").val()=="") alert("Both input fields (Go back and Show how many) are required.");
else $("##f").submit();
})
});
</script>
</cfoutput>
<cfset raText=listToArray(exceptionLog,chr(10))>
<cfset raErr=[]>
<cfset goneBack=0>
<cfset showHowMany=1>
<cfoutput>
<cfloop from="#arrayLen(raText)#" to="1" step="-1" index="idxErr">
<cfif findNoCase("error",raText[idxErr])>
<cfif goneBack lte form.goBack><cfset goneBack=goneBack+1><!--- display nothing, incr counter --->
<cfelse><!--- now that we've gone far enough back, start displaying --->
<strong>#showHowMany#</strong>#raText[idxErr]# <cfif idxErr neq (arrayLen(raText)-1)><br />#raText[idxErr+1]#</cfif><br /><br />
<cfif int(showHowMany) lte int(form.showHowMany)-1><cfset showHowMany=showHowMany+1>
<cfelse><cfbreak><!--- incr counter up to number user entered (or default) and then bail out --->
</cfif>
</cfif>
</cfif>
</cfloop>
</body>
</html>
</cfoutput>
也許你想嘗試,並檢查霍斯https://github.com/aarongreenlee/Hoth – Vlad
不要監視該文件是否存在錯誤,在所有ColdFusion應用程序中使用適當的錯誤處理 - [處理ColdFusion中的錯誤](https://helpx.adobe.com/coldfusion/developing-applications/developing-cfml-applications/handling-errors。 HTML) –