dampen() Function (Python, SLAX, and XSLT)
Namespaces
http://xml.juniper.net/junos/commit-scripts/1.0 http://xml.libslax.org/slax
Python Syntax
result = jcs.dampen(tag-string, max, interval)
SLAX Syntax
var $result = prefix:dampen(tag-string, max, interval);
XSLT Syntax
<xsl:variable name="result" select="prefix:dampen(tag-string, max, interval)"/>
Description
Prevent the same operation from being repeatedly executed within a script.
The dampen()
function returns false
if the number of calls to the jcs:dampen()
function exceeds a max
number of calls in the time interval interval
. Otherwise, the function returns true
. The function parameters include an arbitrary string that is used
to distinguish different calls to the jcs:dampen()
function. This tag is stored in the /var/run directory on the device.
The prefix associated with the namespace URI should be defined in the prefix-to-namespace mapping in the style sheet.
Parameters
interval |
Time interval, in minutes. |
max |
Maximum number of calls to the |
tag-string |
Arbitrary string used to distinguish different
calls to the |
Return Value
result |
Boolean value based on the number of calls to |
Usage Examples
In the following example, if the jcs:dampen()
function with the tag 'mytag1' is called
less than three times in a 10-minute interval, the function returns true
. If the function is called more than three times
within 10 minutes, the function returns false
.
if (jcs:dampen('mytag1', 3, 10)) { /* Code for situations when jcs:dampen() with */ /* the tag 'mytag1' is called less than three times */ /* within 10 minutes */ } else { /* Code for situations when jcs:dampen() with */ /* the tag 'mytag1' exceeds the three call maximum */ /* limit within 10 minutes */ }
Release Information
Function introduced in Junos OS Release 9.4.
Support for the slax namespace http://xml.libslax.org/slax added in Junos OS Release 12.2.
Support for Python added in Junos OS Release 16.1R1.