Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

alarm_handler (3erl)

Name

alarm_handler - An Alarm Handling Process

Synopsis

Please see following description for synopsis

Description

alarm_handler(3)           Erlang Module Definition           alarm_handler(3)



NAME
       alarm_handler - An Alarm Handling Process

DESCRIPTION
       The  alarm  handler  process  is a gen_event event manager process that
       receives alarms in the system. This process is not  intended  to  be  a
       complete alarm handler. It defines a place to which alarms can be sent.
       One simple event handler is installed in the alarm handler at  startup,
       but users are encouraged to write and install their own handlers.

       The  simple event handler sends all alarms as info reports to the error
       logger, and saves all in a list. This list can be  passed  to  a  user-
       defined  event handler, which can be installed later. The list can grow
       large if many alarms are generated. This is a good reason to install  a
       better user-defined handler.

       Functions  are  provided  to  set and clear alarms. The alarm format is
       defined by the user. For example, an event  handler  for  SNMP  can  be
       defined, together with an alarm Management Information Base (MIB).

       The alarm handler is part of the SASL application.

       When  writing  new  event handlers for the alarm handler, the following
       events must be handled:

         {set_alarm, {AlarmId, AlarmDescr}}:
           This event is generated by alarm_handler:set_alarm({AlarmId,  Alar-
           mDecsr}).

         {clear_alarm, AlarmId}:
           This event is generated by alarm_handler:clear_alarm(AlarmId).

       The  default  simple  handler  is  called  alarm_handler  and it can be
       exchanged by calling  gen_event:swap_handler/3  as  gen_event:swap_han-
       dler(alarm_handler, {alarm_handler, swap}, {NewHandler, Args}). NewHan-
       dler:init({Args, {alarm_handler, Alarms}}) is called. For more details,
       see gen_event(3) in STDLIB.

EXPORTS
       clear_alarm(AlarmId) -> void()

              Types:

                 AlarmId = term()

              Sends event clear_alarm to all event handlers.

              When receiving this event, the default simple handler clears the
              latest received alarm with id AlarmId.

       get_alarms() -> [alarm()]

              Returns a list of all active alarms. This function can  only  be
              used when the simple handler is installed.

       set_alarm(alarm())

              Types:

                 alarm() = {AlarmId, AlarmDescription}
                 AlarmId = term()
                 AlarmDescription = term()

              Sends event set_alarm to all event handlers.

              When receiving this event, the default simple handler stores the
              alarm. AlarmId identifies the alarm and is used when  the  alarm
              is cleared.

SEE ALSO
       error_logger(3), gen_event(3)



Ericsson AB                       sasl 4.1.1                  alarm_handler(3)