To configure a threshold alarm rule:
-
use the following rhino-console commands to view available rules, export a rule to an XML file, edit the rule file, and then re-import the edited file into the SLEE
-
or use Threshold Rule MBean operations.
View rules
To view a current threshold alarm rule., use the getconfig console command:
Command |
getconfig [-namespace] <configuration type> [configuration key]
Description
Extract and display content of a container configuration key. The optional
-namespace argument must be used to get the config of a namespace-specific key.
If no key is specified the configs of all keys of the given type are shown
|
|---|---|
Example |
To display the threshold alarm rule named "rhino-memory-usage-over-80": $ ./rhino-console getconfig threshold-rules "rule/rhino-memory-usage-over-80"
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE rhino-threshold-rules-config PUBLIC "-//Open Cloud Ltd.//DTD Rhino Threshold Rules Config 2.6//EN" "rhino-threshold-rules-config-2.6.dtd">
<rhino-threshold-rules-config config-version="2.6" rhino-version="Rhino (version='3.2', release='8', build='xxx', revision='xxx')" timestamp="xxx">
<!--Generated Rhino configuration file: xxxx-xx-xx xx:xx:xx.xxx-->
<threshold-rules active="true" name="rhino-memory-usage-over-80">
<trigger-conditions name="Trigger conditions" operator="OR" period="5000">
<relative-threshold operator=">" value="0.8">
<first-statistic calculate-delta="false" parameter-set="JVM" statistic="heapUsed"/>
<second-statistic calculate-delta="false" parameter-set="JVM" statistic="heapCommitted"/>
</relative-threshold>
</trigger-conditions>
<reset-conditions name="Reset conditions" operator="OR" period="0"/>
<trigger-actions>
<raise-alarm-action level="Critical" message="Memory Heap used over 80%" type="MEMORY"/>
</trigger-actions>
<reset-actions/>
</threshold-rules>
</rhino-threshold-rules-config>
|
Export rules
To save a threshold rule configuration to a file for editing, use the exportconfig console command:
Command |
exportconfig [-namespace] <configuration type> [configuration key] <filename>
Description
Extract content of a container configuration key and save it to a file. The
optional -namespace argument must be used to export the config of a
namespace-specific key
|
|---|---|
Example |
To export the threshold alarm rule named "rhino-memory-usage-over-80" to the file $ ./rhino-console exportconfig threshold-rules "rule/rhino-memory-usage-over-80" rule_rhino-memory-usage-over-80.xml Export threshold-rules: (rule/rhino-memory-usage-over-80 to rule_rhino-memory-usage-over-80.xml Wrote rule_rhino-memory-usage-over-80.xml |
|
|
The structure of the exported data in the XML file is identical to that displayed by the getconfig command.
|
Edit rules
You can modify a rule using a text editor.
In the following example, a reset condition has been added to the rule previously exported, so that the alarm raised will automatically clear when heap memory utilisation falls below 80% for a continuous 30s period.
(Previously the reset-conditions element in this rule had no conditions.)
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE rhino-threshold-rules-config PUBLIC "-//Open Cloud Ltd.//DTD Rhino Threshold Rules Config 2.6//EN" "rhino-threshold-rules-config-2.6.dtd">
<rhino-threshold-rules-config config-version="2.6" rhino-version="Rhino (version='3.2', release='8', build='xxx', revision='xxx')" timestamp="xxx">
<!--Generated Rhino configuration file: xxxx-xx-xx xx:xx:xx.xxx-->
<threshold-rules active="true" name="rhino-memory-usage-over-80">
<trigger-conditions name="Trigger conditions" operator="OR" period="1000">
<relative-threshold operator=">" value="0.8">
<first-statistic calculate-delta="false" parameter-set="JVM" statistic="heapUsed"/>
<second-statistic calculate-delta="false" parameter-set="JVM" statistic="heapCommitted"/>
</relative-threshold>
</trigger-conditions>
<reset-conditions name="Reset conditions" operator="OR" period="30000">
<relative-threshold operator="<" value="0.8">
<first-statistic calculate-delta="false" parameter-set="JVM" statistic="heapUsed"/>
<second-statistic calculate-delta="false" parameter-set="JVM" statistic="heapCommitted"/>
</relative-threshold>
</reset-conditions>
<trigger-actions>
<raise-alarm-action level="Critical" message="Memory Heap used over 80%" type="MEMORY"/>
</trigger-actions>
<reset-actions>
<clear-raised-alarm-action/>
</reset-actions>
</threshold-rules>
</rhino-threshold-rules-config>
Import rules
To import the modified threshold alarm rule file, use the importconfig console command:
Command |
importconfig [-namespace] <configuration type> <filename> [-replace]
Description
Import a container configuration key. The optional -namespace argument must be
used to import a config for a namespace-specific key
|
|---|---|
Example |
To import the threshold alarm rule from the file $ ./rhino-console importconfig threshold-rules rule_rhino-memory-usage-over-80.xml -replace Configuration successfully imported. |
|
|
The -replace option is required when importing a rule with the same name as an existing rule, as there can be only one rule configuration with a given name present at any one time.
|
