/Alarms ODB tree: Difference between revisions
mNo edit summary |
|||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<div style="column-count: | {{Pagelinks}} | ||
* [[ | |||
* [[ | = Links = | ||
* [[ | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* [[ | * [[Alarms Page]] | ||
* [[Alarm System]] | |||
* [[Mhttpd|mhttpd MIDAS web server]] | |||
* [[odbedit]] | |||
</div> | </div> | ||
= Purpose = | |||
The ODB /Alarms tree contains user and system information related to alarms (see [[Alarm System]]). The information from this tree is displayed in the [[Alarms Page]]. | |||
= Creating the /Alarms tree = | |||
When the ODB is created, the /Alarms tree is automatically created, with | When the ODB is created, the /Alarms tree is automatically created, with | ||
* two Alarms with [[#<alarm-name> subtree|<alarm name>]] "Demo ODB" and "Demo periodic" and | * two Alarms with [[#<alarm-name> subtree|<alarm name>]] "Demo ODB" and "Demo periodic" and | ||
Line 17: | Line 18: | ||
These are shown in the [[#Example of an /Alarms tree|example below]]. | These are shown in the [[#Example of an /Alarms tree|example below]]. | ||
The user may create other alarms and classes by copying an existing <alarm-name> or <alarm-class> subtree and editing (via [[Alarms Page]] or [[odbedit]]) as required. | |||
The user may create other alarms and classes by copying an existing <alarm-name> or <alarm-class> subtree and editing as required | |||
By default, the [[Alarm System]] is NOT active. When it is active, | |||
the overall alarm is checked once every minute. Once the alarm has been triggered, the message associated with the alarm can be repeated at a different rate. | |||
This /Alarms tree | = Example = | ||
This example (using [[odbedit]]) shows the default <span style="color: purple; font-style:italic;">/Alarms</span> tree. See also [[Alarms Page]]. | |||
$ odbedit | $ odbedit | ||
Line 100: | Line 98: | ||
= /Alarms tree structure = | |||
The <span style="color: purple;">/Alarms</span> ODB tree is split into 2 subtrees: | |||
* [[#Alarms subtree|Alarms subtree]] containing as many alarms (i.e. <span style="color: purple;"><alarm-name></span> subtrees) as the user desires. Each alarm must be one of the four defined [[Alarm System#Alarm Types|Alarm Types]]. These also define the conditions that trigger the alarm. | |||
* [[#Classes subtree|Classes subtree]] containing as many classes (i.e. <span style="color: purple;"><class-name></span> subtrees) as the user desires. Each class defines the action to be taken when the alarm occurs. Two Classes (Alarm and Warning) are defined by default (see [[#Example|Example]]). | |||
See also [[Alarm System]]. | |||
<br><br> | |||
= Keys in the <span style="color: purple;">''/Alarms''</span> ODB tree = | |||
== <span style="color: purple;">''Alarm system active''</span> == | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' BOOL | * '''Type:''' BOOL | ||
Line 239: | Line 123: | ||
<br> | <br> | ||
== <span style="color: purple;">''Alarms''</span> subtree == | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' DIR | * '''Type:''' DIR | ||
Line 254: | Line 138: | ||
=== <span style="color: purple;">''<alarm-name>''</span> subtree === | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' DIR | * '''Type:''' DIR | ||
Line 269: | Line 153: | ||
==== <span style="color: purple;">''Active''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' BOOL | * '''Type:''' BOOL | ||
Line 285: | Line 169: | ||
=== <span style="color: purple;">''Triggered''</span> === | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' INT | * '''Type:''' INT | ||
Line 301: | Line 185: | ||
==== <span style="color: purple;">''Type''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' INT | * '''Type:''' INT | ||
Line 316: | Line 200: | ||
==== <span style="color: purple;">''Check interval''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' INT | * '''Type:''' INT | ||
Line 333: | Line 217: | ||
==== <span style="color: purple;">''Checked last''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' DWORD | * '''Type:''' DWORD | ||
Line 350: | Line 234: | ||
==== <span style="color: purple;">''Time triggered first''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 366: | Line 250: | ||
==== <span style="color: purple;">''Time triggered last''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 383: | Line 267: | ||
==== <span style="color: purple;">''Condition''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 400: | Line 284: | ||
==== <span style="color: purple;">''Alarm class''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 407: | Line 291: | ||
This key in the [[#<alarm-name> subtree|<alarm-name> subtree]] is set to one of the existing Alarm classes, e.g. "Alarm","Warning". | This key in the [[#<alarm-name> subtree|<alarm-name> subtree]] is set to one of the existing Alarm classes, e.g. the defaults "Alarm","Warning" or a user-defined class, e.g. "Caution". | ||
The Alarm class must be defined in the [[#<class-name> subtree|Classes subtree]]. | The Alarm class must be defined in the [[#<class-name> subtree|Classes subtree]]. | ||
Line 415: | Line 299: | ||
==== <span style="color: purple;">''Alarm message''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 431: | Line 315: | ||
== <span style="color: purple;">''Classes''</span> subtree == | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' DIR | * '''Type:''' DIR | ||
Line 445: | Line 329: | ||
=== <span style="color: purple;">''<class-name>''</span> subtree === | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' DIR | * '''Type:''' DIR | ||
</div> | </div> | ||
This subtree in the [[#Classes subtree]] defines one of the alarm classes of name ''name'', where ''name'' is substituted for <class-name>. This subtree will be repeated with a different name for each defined class. In the [[#Example of an /Alarms tree|example above]], two <class-name> subtrees are shown, named "Alarm" and "Warning". | This subtree in the [[#Classes subtree|Classes subtree]] defines one of the alarm classes of name ''name'', where ''name'' is substituted for <class-name>. This subtree will be repeated with a different name for each defined class. In the [[#Example of an /Alarms tree|example above]], two <class-name> subtrees are shown, named "Alarm" and "Warning". | ||
Line 459: | Line 343: | ||
==== <span style="color: purple;">''Write System Message''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' BOOL | * '''Type:''' BOOL | ||
Line 474: | Line 358: | ||
==== <span style="color: purple;">''Write Elog Message''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' BOOL | * '''Type:''' BOOL | ||
Line 494: | Line 378: | ||
==== <span style="color: purple;">''System message interval''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' INT | * '''Type:''' INT | ||
Line 501: | Line 385: | ||
This key in the [[#<class-name> subtree|<class-name> subtree]] contains the | This key in the [[#<class-name> subtree|<class-name> subtree]] contains the | ||
interval in seconds between successive system messages when an alarm with this [[#Alarm class|alarm class]] is triggered | interval in seconds between successive system messages when an alarm with this [[#Alarm class|alarm class]] is triggered. | ||
See | Set this key to 0 to ensure that every alarm is recorded into the [[Message System#MIDAS Log file|MIDAS log file]]. | ||
'''See important note ''' on the [[Alarm System#Implementation of the MIDAS Alarm System|implementation of this key]] by the alarm system. | |||
<br> | <br> | ||
Line 509: | Line 395: | ||
<br> | <br> | ||
==== <span style="color: purple;">''System message last''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' DWORD | * '''Type:''' DWORD | ||
Line 525: | Line 411: | ||
==== <span style="color: purple;">''Execute command''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 540: | Line 426: | ||
--------- | --------- | ||
<br> | <br> | ||
==== <span style="color: purple;">''Execute interval''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | |||
* '''Type:''' INT | |||
* '''Default:''' 0 | |||
</div> | |||
When an alarm with this [[#Alarm class|alarm class]] is triggered, if a valid | |||
[[#Execute command|Execute command]] is supplied, the command will be repeated at an interval in seconds designated by this key in the [[#<class-name> subtree|<class-name> subtree]], providing the interval set is greater than 0. | |||
<br> | |||
--------- | |||
<br> | |||
==== <span style="color: purple;">''Execute last''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' DWORD | * '''Type:''' DWORD | ||
Line 560: | Line 461: | ||
==== <span style="color: purple;">''Stop run''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' BOOL | * '''Type:''' BOOL | ||
Line 576: | Line 477: | ||
==== <span style="color: purple;">''Display BGColor''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 583: | Line 484: | ||
This key in the [[#<class-name> subtree|<class-name> subtree]] contains the | This key in the [[#<class-name> subtree|<class-name> subtree]] contains the | ||
background colour of alarm banner | background colour of the alarm banner on the [[mhttpd]] [[Status Page]]. The alarm banner | ||
appears if the alarm is triggered. | |||
Line 593: | Line 495: | ||
==== <span style="color: purple;">''Display FGColor''</span> ==== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | ||
* '''Type:''' STRING | * '''Type:''' STRING | ||
Line 600: | Line 502: | ||
This key in the [[#<class-name> subtree|<class-name> subtree]] contains the | This key in the [[#<class-name> subtree|<class-name> subtree]] contains the | ||
foreground colour of alarm banner | foreground colour of the alarm banner on the [[mhttpd]] [[Status Page]]. The alarm banner | ||
appears if the alarm is triggered. | |||
[[Category:ODB Tree]] | |||
[[Category:Alarms]] |
Latest revision as of 14:57, 6 August 2015
Links
Purpose
The ODB /Alarms tree contains user and system information related to alarms (see Alarm System). The information from this tree is displayed in the Alarms Page.
Creating the /Alarms tree
When the ODB is created, the /Alarms tree is automatically created, with
- two Alarms with <alarm name> "Demo ODB" and "Demo periodic" and
- two Classes with <class name> "Alarm" and "Warning".
These are shown in the example below.
The user may create other alarms and classes by copying an existing <alarm-name> or <alarm-class> subtree and editing (via Alarms Page or odbedit) as required.
By default, the Alarm System is NOT active. When it is active, the overall alarm is checked once every minute. Once the alarm has been triggered, the message associated with the alarm can be repeated at a different rate.
Example
This example (using odbedit) shows the default /Alarms tree. See also Alarms Page.
$ odbedit [local:pol:S]/>cd /alarms [local:pol:S]/Alarms>ls Alarm system active y Alarms Classes
[local:pol:S]/Alarms>ls -r -lt Key name Type #Val Size Last Opn Mode Value --------------------------------------------------------------------------- Alarms DIR Alarm system active BOOL 1 4 4h 0 RWD y Alarms DIR Demo ODB DIR Active BOOL 1 4 >99d 0 RWD n Triggered INT 1 4 >99d 0 RWD 0 Type INT 1 4 >99d 0 RWD 3 Check interval INT 1 4 >99d 0 RWD 60 Checked last DWORD 1 4 >99d 0 RWD 0 Time triggered firstSTRING 1 32 >99d 0 RWD Time triggered last STRING 1 32 >99d 0 RWD Condition STRING 1 256 >99d 0 RWD /Runinfo/Run number > 100 Alarm Class STRING 1 32 >99d 0 RWD Alarm Alarm Message STRING 1 80 >99d 0 RWD Run number became too large Demo periodic DIR Active BOOL 1 4 >99d 0 RWD n Triggered INT 1 4 >99d 0 RWD 0 Type INT 1 4 >99d 0 RWD 4 Check interval INT 1 4 >99d 0 RWD 28800 Checked last DWORD 1 4 >99d 0 RWD 1058817867 Time triggered firstSTRING 1 32 >99d 0 RWD Time triggered last STRING 1 32 >99d 0 RWD Condition STRING 1 256 >99d 0 RWD Alarm Class STRING 1 32 >99d 0 RWD Warning Alarm Message STRING 1 80 >99d 0 RWD Please do your shift checks fePOL DIR Active BOOL 1 4 19s 0 RWD y Triggered INT 1 4 19s 0 RWD 205 Type INT 1 4 3s 0 RWD 2 Check interval INT 1 4 19s 0 RWD 60 Checked last DWORD 1 4 19s 0 RWD 1259196026 Time triggered firstSTRING 1 32 19s 0 RWD Wed Nov 25 12:59:33 2009 Time triggered last STRING 1 32 19s 0 RWD Wed Nov 25 16:40:26 2009 Condition STRING 1 256 3s 0 RWD Program not running Alarm Class STRING 1 32 19s 0 RWD Caution Alarm Message STRING 1 80 19s 0 RWD Program fePOL is not running Classes DIR Alarm DIR Write system messageBOOL 1 4 27h 0 RWD y Write Elog message BOOL 1 4 27h 0 RWD n System message interINT 1 4 27h 0 RWD 60 System message last DWORD 1 4 27h 0 RWD 0 Execute command STRING 1 256 27h 0 RWD Execute interval INT 1 4 27h 0 RWD 0 Execute last DWORD 1 4 27h 0 RWD 0 Stop run BOOL 1 4 27h 0 RWD n Display BGColor STRING 1 32 27h 0 RWD red Display FGColor STRING 1 32 27h 0 RWD black Warning DIR Write system messageBOOL 1 4 >99d 0 RWD y Write Elog message BOOL 1 4 >99d 0 RWD n System message interINT 1 4 >99d 0 RWD 60 System message last DWORD 1 4 >99d 0 RWD 0 Execute command STRING 1 256 >99d 0 RWD Execute interval INT 1 4 >99d 0 RWD 0 Execute last DWORD 1 4 >99d 0 RWD 0 Stop run BOOL 1 4 >99d 0 RWD n Display BGColor STRING 1 32 >99d 0 RWD red Display FGColor STRING 1 32 >99d 0 RWD black
/Alarms tree structure
The /Alarms ODB tree is split into 2 subtrees:
- Alarms subtree containing as many alarms (i.e. <alarm-name> subtrees) as the user desires. Each alarm must be one of the four defined Alarm Types. These also define the conditions that trigger the alarm.
- Classes subtree containing as many classes (i.e. <class-name> subtrees) as the user desires. Each class defines the action to be taken when the alarm occurs. Two Classes (Alarm and Warning) are defined by default (see Example).
See also Alarm System.
Keys in the /Alarms ODB tree
Alarm system active
- Type: BOOL
- Default: "n"
If this key in the /Alarms ODB tree is set to "y", the alarm system is active. Set to "n" to deactivate.
Alarms subtree
- Type: DIR
Sub-tree in the /Alarms ODB tree defining each individual alarm condition.
<alarm-name> subtree
- Type: DIR
This subtree in the /Alarms/alarms subtree specifies the name of one of the defined alarms, where name is substituted for <alarm-name>. This subtree will be repeated with a different name for each defined alarm.
In the example two <alarm-name> subtrees are shown, called "demo odb" and "demo periodic"
Active
- Type: BOOL
- Default: "n"
If this key in the <alarm-name> subtree is set to "y" , this particular alarm is active.
Triggered
- Type: INT
- Default: 0
If this key in the <alarm-name> subtree is non-zero, this alarm has been triggered. Filled by System.
Type
- Type: INT
- Default:
This key in the <alarm-name> subtree must be one of the listed Alarm Types.
Check interval
- Type: INT
- Default: 60
This key in the <alarm-name> subtree contains the
frequency in seconds at which this alarm condition is to be checked by the alarm system.
Checked last
- Type: DWORD
- Default:
This key in the <alarm-name> subtree is written by the Alarm System.
Time triggered first
- Type: STRING
- Default:
This key in the <alarm-name> subtree is written by the Alarm System.
Time triggered last
- Type: STRING
- Default:
This key in the <alarm-name> subtree is written by the Alarm System.
Condition
- Type: STRING
- Default:
This key in the <alarm-name> subtree contains
the condition on which alarm should trigger for evaluated alarms. See #Evaluated Alarm conditions.
Alarm class
- Type: STRING
- Default:
This key in the <alarm-name> subtree is set to one of the existing Alarm classes, e.g. the defaults "Alarm","Warning" or a user-defined class, e.g. "Caution".
The Alarm class must be defined in the Classes subtree.
Alarm message
- Type: STRING
- Default:
This key in the <alarm-name> subtree constains the message to be written when alarm triggers.
Classes subtree
- Type: DIR
Sub-tree in the /Alarms ODB tree defining each individual alarm class. Each class defines the individual action to be performed by a predefined and requested alarm.
<class-name> subtree
- Type: DIR
This subtree in the Classes subtree defines one of the alarm classes of name name, where name is substituted for <class-name>. This subtree will be repeated with a different name for each defined class. In the example above, two <class-name> subtrees are shown, named "Alarm" and "Warning".
Write System Message
- Type: BOOL
- Default: "y"
If this key in the <class-name> subtree is set to "y", a message will be sent to the System log when an alarm with this alarm class is triggered.
Write Elog Message
- Type: BOOL
- Default: "n"
If this key in the <class-name> subtree is set to "y", a message will be written to the Elog when an alarm with this alarm class is triggered.
System message interval
- Type: INT
- Default: 60
This key in the <class-name> subtree contains the interval in seconds between successive system messages when an alarm with this alarm class is triggered.
Set this key to 0 to ensure that every alarm is recorded into the MIDAS log file.
See important note on the implementation of this key by the alarm system.
System message last
- Type: DWORD
- Default: 0
This key in the <class-name> subtree contains the time when the last alarm system message was written. It is filled by the alarm system.
Execute command
- Type: STRING
- Default: ""
This key in the <class-name> subtree may contain a command to be executed when an alarm with this alarm class is triggered. This parameter can be used to trigger Email or SMS alerts.
Execute interval
- Type: INT
- Default: 0
When an alarm with this alarm class is triggered, if a valid Execute command is supplied, the command will be repeated at an interval in seconds designated by this key in the <class-name> subtree, providing the interval set is greater than 0.
Execute last
- Type: DWORD
- Default: 0
This key in the <class-name> subtree contains the time when the alarm system last executed the command in the key Execute command. It is filled by the alarm system.
Stop run
- Type: BOOL
- Default: "n"
This key in the <class-name> subtree if set to "y" will cause the run to stop when an alarm with this alarm class is triggered.
Display BGColor
- Type: STRING
- Default: "red"
This key in the <class-name> subtree contains the background colour of the alarm banner on the mhttpd Status Page. The alarm banner appears if the alarm is triggered.
Display FGColor
- Type: STRING
- Default: "black"
This key in the <class-name> subtree contains the foreground colour of the alarm banner on the mhttpd Status Page. The alarm banner appears if the alarm is triggered.