I recently added some logging to my MG2 app (CF 8.0.1/Linux) that
identified sporadic modelglue.unknownevent errors in my application.
I say sporadic because the events are very much defined and are used
regularly through the day, yet somehow in certain circumstances, they
are failing.
I thought it might be related to redirects (as referenced in another
thread about SES/redirects) but I have the defaultTemplate set to /
index.cfm which otherwise works. I've taken to capturing the stack
trace and contents of CGI scope but everything looks correct. I'd
love any ideas or things to check for a site that, otherwise, runs
fine 99% of the time. Unfortunately there is a concentration in the
events that cause problems which are problematic so I need to sort out
that last 1%.
I use SES URLs handled in code. Here's a request from just a few
minutes ago:
I'm capturing the data below with the following code which is run in
my "exception" event handler:
<cfif structKeyExists(exception, "type") AND exception.type EQ
"ModelGlue.UnknownEvent">
<cfset getAuditService().newWarning(action = "404", event =
"#cgi.script_name##cgi.path_info#?#cgi.query_string#", attributes =
SerializeJSON(CGI)) />
</cfif>
I'm capturing the following information between the above and a stack
trace. Any suggestions of things to change in my logging or potential
problems would be greatly appreciated!
CGI scope:
HTTP_USER_AGENT: Mozilla\/5.0 (Windows NT 5.1) AppleWebKit\/534.24
(KHTML, like Gecko) Chrome\/11.0.696.68 Safari\/534.24
WEB_SERVER_API:
PATH_TRANSLATED: /var/www/pukka/index.cfm
CONTENT_TYPE:
HTTP_ACCEPT_LANGUAGE: en-US,en;q=0.8
HTTP_REFERER:
HTTP_ACCEPT: "application/xml,application/xhtml+xml,text/
html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"
CERT_SERVER_ISSUER:
CERT_SERVER_SUBJECT:
HTTP_ACCEPT_ENCODING: gzip,deflate,sdch
SERVER_SOFTWARE: Apache
SERVER_NAME: www.motorsportreg.com
CF_TEMPLATE_PATH: /var/www/pukka/index.cfm
CERT_FLAGS:
HTTPS_SERVER_ISSUER:
CONTEXT_PATH:
SERVER_PROTOCOL: HTTP/1.1
CERT_SECRETKEYSIZE:
REQUEST_METHOD: GET
HTTPS_SECRETKEYSIZE:
AUTH_PASSWORD:
HTTPS:
CERT_SERIALNUMBER:
CERT_SUBJECT:
SERVER_PORT:80.0
CERT_KEYSIZE:
SCRIPT_NAME: /index.cfm
REMOTE_ADDR: 10.10.77.254
SERVER_PORT_SECURE: 0.0
REMOTE_HOST: 10.10.77.254
HTTPS_KEYSIZE:
HTTP_HOST: www.motorsportreg.com
HTTP_CONNECTION: keep-alive
AUTH_USER:
REMOTE_USER:
PATH_INFO: /event/event.edit/uidEvent/631F00FD-DB37-
B7BB-59270E9F804C9E6F
QUERY_STRING:
CERT_ISSUER:
CERT_COOKIE:
HTTPS_SERVER_SUBJECT:
GATEWAY_INTERFACE: CGI/1.1
AUTH_TYPE:
CONTENT_LENGTH:
Stack trace:
{"code":","ExtendedInfo":","StackTrace":"coldfusion.runtime.CustomException:
Model-Glue: There is no known event handler for "event.edit".
at coldfusion.tagext.lang.ThrowTag.doStartTag(ThrowTag.java:124)
at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2661)
at
cfEventHandlerRegistry2ecfc1735613790$funcGETEVENTHANDLER.runFunction(/
var/www/api/ModelGlue/unity/eventhandler/EventHandlerRegistry.cfc:45)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418)
at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
at coldfusion.runtime.UDFMethod
$ArgumentCollectionFilter.invoke(UDFMethod.java:324)
at
coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:
59)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:192)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:448)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:308)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2272)
at cfModelGlue2ecfc353430176$funcGETEVENTHANDLER.runFunction(/var/www/
api/ModelGlue/unity/framework/ModelGlue.cfc:232)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418)
at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
at coldfusion.runtime.UDFMethod
$ArgumentCollectionFilter.invoke(UDFMethod.java:324)
at
coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:
59)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:192)
at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:2471)
at cfModelGlue2ecfc353430176$funcHANDLEEVENTREQUEST.runFunction(/var/
www/api/ModelGlue/unity/framework/ModelGlue.cfc:278)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418)
at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
at coldfusion.runtime.UDFMethod
$ArgumentCollectionFilter.invoke(UDFMethod.java:324)
at
coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:
59)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:192)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:448)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:308)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2272)
at cfModelGlue2ecfm601653661.runPage(/var/www/api/ModelGlue/unity/
ModelGlue.cfm:126)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:196)
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:370)
at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2661)
at cfindex2ecfm250899703.runPage(/var/www/pukka/index.cfm:82)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:196)
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:370)
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:
282)
at
coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:
48)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:86)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
at
coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:
28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.CfmServlet.service(CfmServlet.java:198)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:
89)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
at
coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:
42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:
46)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
at jrun.servlet.FilterChain.service(FilterChain.java:101)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at
jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:
286)
at
jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:
543)
at
jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:
203)
at jrunx.scheduler.ThreadPool
$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)
at jrunx.scheduler.ThreadPool
$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.ThreadPool
$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
","Detail":"
,"Message":"Model-Glue: There is no known event handler for
"event.edit"."
,"ErrorCode":"
,"Type":"ModelGlue.UnknownEvent"
,"TagContext":[{"ID":"CFTHROW","COLUMN":0,"TEMPLATE":"/var/www/api/
ModelGlue/unity/eventhandler/EventHandlerRegistry.cfc","RAW_TRACE":"at
cfEventHandlerRegistry2ecfc1735613790$funcGETEVENTHANDLER.runFunction(/
var/www/api/ModelGlue/unity/eventhandler/EventHandlerRegistry.cfc:
45)","TYPE":"CFML","LINE":45}
,{"ID":"CF_TEMPLATEPROXY","COLUMN":0,"TEMPLATE":"/var/www/api/
ModelGlue/unity/framework/ModelGlue.cfc","RAW_TRACE":"at
cfModelGlue2ecfc353430176$funcGETEVENTHANDLER.runFunction(/var/www/api/
ModelGlue/unity/framework/ModelGlue.cfc:232)","TYPE":"CFML","LINE":
232}
,{"ID":"CF_UDFMETHOD","COLUMN":0,"TEMPLATE":"/var/www/api/ModelGlue/
unity/framework/ModelGlue.cfc","RAW_TRACE":"at
cfModelGlue2ecfc353430176$funcHANDLEEVENTREQUEST.runFunction(/var/www/
api/ModelGlue/unity/framework/ModelGlue.cfc:278)","TYPE":"CFML","LINE":
278}
,{"ID":"CF_TEMPLATEPROXY","COLUMN":0,"TEMPLATE":"/var/www/api/
ModelGlue/unity/ModelGlue.cfm","RAW_TRACE":"at
cfModelGlue2ecfm601653661.runPage(/var/www/api/ModelGlue/unity/
ModelGlue.cfm:126)","TYPE":"CFML","LINE":126}
,{"ID":"CFINCLUDE","COLUMN":0,"TEMPLATE":"/var/www/pukka/
index.cfm","RAW_TRACE":"at cfindex2ecfm250899703.runPage(/var/www/
pukka/index.cfm:82)","TYPE":"CFML","LINE":82}]}
--
Model-Glue Sites:
Home Page: http://www.model-glue.com
Documentation: http://docs.model-glue.com
Bug Tracker: http://bugs.model-glue.com
Blog: http://www.model-glue.com/blog
You received this message because you are subscribed to the Google
Groups "model-glue" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/model-glue?hl=en