Works with CF8?

18 views
Skip to first unread message

Derrick Anderson

unread,
Aug 12, 2013, 7:24:37 PM8/12/13
to bugl...@googlegroups.com
I've used bugloghq on cf9 before and it works great.  I just tried to set it up on a cf8 enterprise server and I get errors all over the place, looking like things were written for cf9 syntax.  Should this work on cf8 as advertised?

Thanks

Oscar Arevalo

unread,
Aug 14, 2013, 12:50:44 AM8/14/13
to bugl...@googlegroups.com
Hi Derrick,
The BugLogHQ webapp actually requires a CF9 (or compatible) engine. Only the client service can run on CF8 boxes. 

Thanks,

Oscar



On Mon, Aug 12, 2013 at 4:24 PM, Derrick Anderson <no.way.thi...@gmail.com> wrote:
I've used bugloghq on cf9 before and it works great.  I just tried to set it up on a cf8 enterprise server and I get errors all over the place, looking like things were written for cf9 syntax.  Should this work on cf8 as advertised?

Thanks

--
 
---
You received this message because you are subscribed to the Google Groups "BugLogHQ" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bugloghq+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
Oscar Arevalo

Jose Gomez Jr

unread,
Jul 15, 2015, 11:54:49 AM7/15/15
to bugl...@googlegroups.com
I can seem to get the client to work on my cf8 boxes. I keep getting an error on this line:

<cfset data = {
                        "dateTime" = Now(),
                        "message" = arguments.message,
                        "applicationCode" = arguments.AppName,
                        "severityCode" = arguments.severityCode,
                        "hostName" = variables.hostName,
                        "exceptionMessage" = arguments.exception.message,
                        "exceptionDetails" = arguments.exception.detail,
                        "CFID" = tmpCFID,
                        "CFTOKEN" = tmpCFTOKEN,
                        "userAgent" = cgi.HTTP_USER_AGENT,
                        "templatePath" = getBaseTemplatePath(),
                        "HTMLReport" = longMessage,
                        "APIKey" = variables.apiKey

Gavin Pickin

unread,
Jul 15, 2015, 12:02:55 PM7/15/15
to bugl...@googlegroups.com
Were object literals working in cf8? 
I know it was introduced, but it was seriously flawed and awkward.

That is what I would check first.
For more options, visit https://groups.google.com/d/optout.

Jose Gomez Jr

unread,
Jul 15, 2015, 1:43:29 PM7/15/15
to bugl...@googlegroups.com
Thats a great question. Maybe not. I wonder if there is an older service cfc that will work for CF8. 

Oscar Arevalo

unread,
Jul 15, 2015, 2:28:34 PM7/15/15
to bugl...@googlegroups.com
@jose, 
This is the most recent 'oldest' version I could find on the repo that does not have the "data = { ... } " line:
https://github.com/oarevalo/BugLogHQ/blob/1.6/client/bugLogService.cfc

It is from version 1.6 though. I *** think *** it should work at least at a basic level. If not, you could try just refactoring a bit that "data" assignment and break it into separate statements.

Out of curiosity, what is the exact error you are getting?

Thanks.

Oscar


Jose Gomez Jr

unread,
Jul 16, 2015, 4:57:20 PM7/16/15
to bugl...@googlegroups.com
This is what i'm getting


Invalid CFML construct found on line 175 at column 39.

ColdFusion was looking at the following text:

{

The CFML compiler was processing:

  • A cfset tag beginning on line 175, column 26.
  • A cfset tag beginning on line 175, column 26.
  • A cfset tag beginning on line 175, column 26.
 

This is were the <cfset data = {} /> is. 

I was able to get the application running by submitting via a modified 1.6 version of the notifyService function:

<cffunction name="notifyService" access="public" returntype="void" hint="Use this method to tell the bugTrackerService that an error has ocurred" output="false">


                <cfargument name="message" type="string" required="true">


                <cfargument name="exception" type="any" required="false" default="#structNew()#">


                <cfargument name="extraInfo" type="any" required="false" default="">


                <cfargument name="severityCode" type="string" required="false" default="#variables.defaultSeverityCode#">


                <cfargument name="maxDumpDepth" type="numeric" required="false" default="#variables.maxDumpDepth#">


                <cfargument name="writeToCFLog" type="boolean" required="false" default="#variables.writeToCFLog#">


                <cfargument name="AppName" type="string" required="false" default="#variables.appName#">




                <cfset var shortMessage = "">


                <cfset var longMessage = "">


                <cfset var tmpCFID = "">


                <cfset var tmpCFTOKEN = "">


               


                <!--- make sure we have required members --->


                <cfparam name="arguments.exception.message" default="">


                <cfparam name="arguments.exception.detail" default="">




                <!--- compose short and full messages --->


                <cfset shortMessage = composeShortMessage(arguments.message, arguments.exception, arguments.extraInfo)>


                <cfset longMessage = composeFullMessage(arguments.message, arguments.exception, arguments.extraInfo, arguments.maxDumpDepth, arguments.AppName)>


               


                <!--- check if there are valid CFID/CFTOKEN values available --->


                <cfif isDefined("cfid")>


                        <cfset tmpCFID = cfid>


                </cfif>


                <cfif isDefined("cftoken")>


                        <cfset tmpCFTOKEN = cftoken>


                </cfif>        


               


                <!--- submit error --->


                <cftry>


                        <cfif variables.useListener>


                                <cfif variables.protocol eq "REST">


                                        <!--- send bug via a REST interface --->


                                        <cfhttp method="post" throwonerror="false" timeout="0" url="#variables.bugLogListener#">


                                                <cfhttpparam type="formfield" name="dateTime" value="#Now()#">


                                                <cfhttpparam type="formfield" name="message" value="#arguments.message#">


                                                <cfhttpparam type="formfield" name="applicationCode" value="#variables.appName#">


                                                <cfhttpparam type="formfield" name="severityCode" value="#arguments.severityCode#">


                                                <cfhttpparam type="formfield" name="hostName" value="#variables.hostName#">


                                                <cfhttpparam type="formfield" name="exceptionMessage" value="#arguments.exception.message#">


                                                <cfhttpparam type="formfield" name="exceptionDetails" value="#arguments.exception.detail#">


                                                <cfhttpparam type="formfield" name="CFID" value="#tmpCFID#">


                                                <cfhttpparam type="formfield" name="CFTOKEN" value="#tmpCFTOKEN#">


                                                <cfhttpparam type="formfield" name="userAgent" value="#cgi.HTTP_USER_AGENT#">


                                                <cfhttpparam type="formfield" name="templatePath" value="#GetBaseTemplatePath()#">


                                                <cfhttpparam type="formfield" name="HTMLReport" value="#longMessage#">


                                                <cfhttpparam type="formfield" name="APIKey" value="#variables.apikey#">


                                        </cfhttp>


                                        <cfif NOT find( 200 , cfhttp.StatusCode )>


                                                <cfthrow message="Invalid HTTP Response Received" detail="#cfhttp.FileContent#" />


                                        </cfif>


                                <cfelse>


                                        <!--- send bug via a webservice (SOAP) --->


                                        <cfset variables.oBugLogListener.logEntry(Now(),


                                                sanitizeForXML(arguments.message),


                                                variables.appName,


                                                arguments.severityCode,


                                                variables.hostName,


                                                sanitizeForXML(arguments.exception.message),


                                                sanitizeForXML(arguments.exception.detail),


                                                tmpCFID,


                                                tmpCFTOKEN,


                                                cgi.HTTP_USER_AGENT,


                                                GetBaseTemplatePath(),


                                                sanitizeForXML(longMessage),


                                                variables.apikey )>


                                </cfif>


                        <cfelse>


                                <cfif variables.bugEmailRecipients neq "">


                                        <cfset sendEmail(arguments.message, longMessage, "BugLog listener not available")>


                                </cfif>


                        </cfif>




                        <cfcatch type="any">


                                <!--- an error ocurred, if there is an email address stored, then send details to that email, otherwise rethrow --->


                                <cfif variables.bugEmailRecipients neq "">


                                        <cfset sendEmail(arguments.message, longMessage, cfcatch.message & cfcatch.detail)>


                                <cfelse>


                                        <cfrethrow>


                                </cfif>


                        </cfcatch>              


                </cftry>


               


                <!--- add entry to coldfusion log --->  


                <cflog type="error"


                           text="#shortMessage#"


                           file="#variables.appName#_BugTrackingErrors">




        </cffunction>



Reply all
Reply to author
Forward
0 new messages