When each Canister is initialized, the current event definitions are accessed, validated, and loaded.
Validation checks include the following:
- Basic XML formatting
- Event-specific structuring
- Hit and session attribute definitions and their corresponding patterns
Attribute definition errors
If the above check fails, the following message appears in the eventlog. The most likely scenario is that the event definitions were not loaded properly during installation. The Canister does not start processing until the error is addressed with an event definition update:
Event log error message:
Sessionization patterns not valid in event file:
C:\TeaLeaf\System\eventdefs.xml
Circular dependency errors
Validation check scans for circular dependencies in the event definitions. The event engine checks for circular dependencies throughout the event hierarchy tree. A circular dependency occurs when the output of one event is also its eventual input. Meaning, if you create an even that captures a value, then create a dimension that is populated by that event and then attempt to add this dimension to the event, a circular dependency error is populated.
If one is detected, then the following message is inserted into the system event log:
"Circular dependency detected in event file ..."
Compile failure errors
If the event XML fails to compile, the following error message is inserted into the system event log.
When compile error occurs, the most recent known-good set of event definitions is used.
"Error: Failed to compile event definitions in file ... Using existing
event definitions.
Runtime errors
During the evaluation of events, if errors occur at run time, the following error message is inserted into the system event log.
When runtime error occurs, the most recent known-good set of event definitions is used.
"Error: Runtime errors detect for event definitions file ... Using existing
event definitions."
Event loading errors
If an error is detected during the loading process, the following message is returned:
Error: http://<servername>:<port>/eventdefinitions?<options>
returned with status code = <status code> - <error message text>.
Where:
<servername>
- server name of the Search Server<port>
- port number for Search Server. This value is typically19000
.<options>
- Any query parameters that are associated with the Search Server request.<status code>
- HTTP status code that is returned by the Data Service to Search Server.<error message text>
- error message text that is returned by the status code.