scriptlet - Lua Policy Scripts
The scriptlet module enables the use of Lua scripts to enforce policy. For details about policy, see Implementing Policy with Momentum .
To use the scriptlet module, the alerting module must be loaded, as shown in the following example:
alerting {} scriptlet "scriptlet" { script_ttl = 300 script "boot" { source = "msys.boot" } }
The scriptlet module is not a singleton; however, only one named instance of the scriptlet module may appear in a configuration at a given time. For example, this configuration is valid (each instance name is identical; i.e., "scriptlet"):
scriptlet "scriptlet" { <options> } scriptlet "scriptlet" { <options> }
Whereas this configuration is invalid (each instance name is different; i.e., "scriptlet" and "other_name"):
scriptlet "scriptlet" { <options> } scriptlet "other_name" { <options> }
The following configuration options are available:
- always_gc
 - 
Whether or not to always garbage collect. Default value is
false. With the introduction of threaded Lua, this option is redundant. - gc_pause
 - 
Default value is
200. For more information about this option, see the section on "Garbage Collection" at http://www.lua.org/manual/5.1/manual.html. - gc_stepmul
 - 
Default value is
200. For more information about this option, see the section on "Garbage Collection" at http://www.lua.org/manual/5.1/manual.html. - max_spare_per_master
 - 
Default value is
5000. - reap_interval
 - 
Controls how often to expire spares from the spare thread cache. Default value is
1. This is not likely to need changing. - script
 - 
In the code example “scriptlet Configuration”, "boot" is the name of the module that is provided by the script. The boot module is located in the
/opt/msys/ecelerity/libexec/scriptlets/msysdirectory. It provides core product features so should always be loaded.Any number of script stanzas may appear within the scriptlet module. The script stanza has only one option,
source, which identifies the location of the Lua policy script.There is a direct correlation between the name of the script stanza and the module it exports. If you are creating your own scripts, the script scope name and the name that a script is registered as must be the same. For detailed information about creating user-defined scripts, see “Creating Policy Scripts”.
For a complete list of all available Lua functions, see Lua Functions Summary .
 - script_ttl
 - 
Duration that the script is cached; the default timeout is 300 seconds. Increasing this value also changes the time that resources consumed by the script stay in memory, thereby increasing memory usage.