...
where <expr>
is any valid KRL expression that results in a string (or something that can be cast as a string such as a number).
Explicit logging places the log message in two places:
- The log message is placed in the transaction log that is returned with the evaluation results if the
logging
pragma is on in the Meta Sectionmeta section. - The log message is shown in the browser's console if the ruleset returns JavaScript to a browser (see Web actions).
The following example would place a string with the value of a variable named query in the log if the rule fired:
...
The following rule is selected when an http:post()
event is raised indicating seen with a error status code indicating an error. The error is logged and then processing is stopped.
Code Block | ||||
---|---|---|---|---|
| ||||
rule r3 is active { select when http post label re#ex# status_code re#([45]\d\d)# setting (status) noop(); fired { log <<Error: #{status}: #{event:attr("status_line")}>> last; } } |
Another approach to logging would use explicit error handling.
See Debugging KRL for more information on debugging tools.