The meta
library provides information about the running ruleset. The following are available (notice notice that these are values, not functions):
meta:eci
- the event channel identifier on which the current event was raisedmeta:host
- the public DNS name of the machine running the engine, including port number. Does not include the trailing "/". ex. http://localhost:8080 You may configure this value when starting your pico engine. See the developer tips page to see why and how.
the public DNS name of the machine running the engine, including port numbermeta:inEvent
-Boolean value
true
if the engine is evaluating an event for this pico,false
otherwise
the public DNS name of the machine running the engine, including port numbermeta:inQuery
-Boolean value
true
if the engine is evaluating a query for this pico,false
otherwise
the versionmeta:picoId
-the ID of the currently running
rulesetpico
meta:rid -
the ruleset ID of the currently running rulesetmeta:ruleName
- the name of the rule currently being evaluated
rulesetAuthormeta:
rulesetURI
- the URL from which the currently running ruleset was registered/installed
ameta:txnId
- the transaction ID for theuthor
current evaluation. This is mostly useful for debugging or as a correlation identifier
meta:rulesetConfig
- the configuration Map given when the ruleset was installed in the pico
...
rid){"description"} - the description
from the meta section of the current ruleset
wrangler:rulesetMeta(
meta:
...
rid){"name"} - the name
from the meta section of the current ruleset
...
Note |
---|
Not Supported |
available: |
meta:callingRID()
- returns the RID of the calling ruleset if running in a module, or the current ruleset ID otherwise.meta:callingVersion()
- returns the version of the calling ruleset if running in a module, or the current ruleset version otherwise.meta:errorCount()
- returns the number of errors for current rule execution. Reset to 0 for each new rule execution.meta:inModule()
- returns a Boolean value indicating whether the current code is running in a module.meta:moduleRID()
- returns the RID of the module if running in a module, or the current ruleset ID otherwise.meta:moduleVersion()
- returns the version of the module if running in a module, or the current ruleset version otherwise.meta:version()
- returns the version of the currently running ruleset.
Note, in the case of meta:moduleRID()
, meta:moduleVersion()
, and meta:inModule()
, care has been taken to preserve static behavior. So, for example, if you do the following, you should get the result you expect based on static function semantics:
Code Block | ||||
---|---|---|---|---|
| ||||
ruleset my_module { ... global { myRid = function() { meta:moduleRID()rid } } } ruleset use_my_module { meta { use module my_module } global { x = my_module:myRid(); // x = my_module, not use_my_module } } |
...