Trace

Description

A function equivalent of the <cftrace> tag and is used in the <cfscript> mode.

Parameters

Same as the <cftrace> tag.

Function syntax

trace (abort, category, inline, text, var)

Following is the sequence of positional notations:

trace (abort, category, inline, text, type, var)

See also

cfscript, cftrace

Usage

You can call this function as name=value pair or as positional argument. For positional arguments, the order of the parameters remains the same as the corresponding tag or as mentioned in the preceding function syntax.

Example

<cfscript> 
    function TotalInterest(principal, annualRate, months) { 
    var years = 0; 
    var interestRate = 0; 
    var totalInterest = 0; 
    principal = REReplace(trim(principal), "[\$]", "", "ALL"); 
    annualRate = Replace(trim(annualRate), "%", "", "ALL"); 
     
    if ((principal <= 0) OR (annualRate <= 0) OR (months <= 0)) { 
        Throw(type="InvalidData",message="All values must be greater than 0."); 
    } 
    interestRate = annualRate / 100; 
    years = months / 12;     
    totalInterest = principal * (((1 + interestRate) ^ years) - 1); 
    return DollarFormat(totalInterest); 
} 
try { 
    Trace(type="Information", inline="true", text="Calculating interest."); //Use of 
    trace function in cfsript 
    WriteOutput(TotalInterest("$2500.00", "5.5%", "12")); 
    Trace(type="Information", inline="true", text="Interest calculation done."); 
    } 
 
catch(InvalidData ex) { 
    //Displayig exception details on screen 
    WriteOutput("<p>An InvalidData exception was thrown.</p>"); 
    WriteOutput("<p>#ex.message#</p>"); 
    //Writting the exception to log file under logs folder of web server. 
    WriteLog(type="Error", file="myapp.log", text="[#ex.type#] #ex.message#"); 
}