The operating system monitor, OS_Mon, provides the following services:
To simplify usage of OS_Mon on distributed Erlang systems, it is
not considered an error trying to use a service at a node where it
is not available (either because OS_Mon is not running, or because
the service is not available for that OS, or because the service
is not started). Instead, a warning message is issued via
error_logger
and a dummy value is returned, which one is
specified in the man pages for the respective services.
When OS_Mon is started, by default all services available for
the OS, except os_sup
, are automatically started. This
configuration can be changed using the following application
configuration parameters:
start_cpu_sup = bool()
cpu_sup
should be started. Defaults to
true
.start_disksup = bool()
disksup
should be started. Defaults to
true
.start_memsup = bool()
memsup
should be started. Defaults to
true
.start_os_sup = bool()
os_sup
should be started. Defaults to
false
.Configuration parameters effecting the different OS_Mon services are described in the respective man pages.
See config(4) for information about how to change the value of configuration parameters.
The following MIBs are defined in OS_Mon:
The MIB is stored in the mibs
directory. It is defined
in SNMPv2 SMI syntax. An SNMPv1 version of the MIB is delivered
in the mibs/v1
directory.
The compiled MIB is located under priv/mibs
, and
the generated .hrl
file under the include
directory.
To compile a MIB that IMPORTS the OTP-OS-MON-MIB
, give
the option {il, ["os_mon/priv/mibs"]}
to the MIB compiler.
If the MIB should be used in a system, it should be loaded into
an agent with a call to os_mon_mib:load(Agent)
, where
Agent
is the pid or registered name of an SNMP agent. Use
os_mon_mib:unload(Agent)
to unload the MIB.
The implementation of this MIB uses Mnesia to store a cache with
data needed, which implicates that Mnesia must be up and running.
The MIB also use functions defined for the OTP-MIB
, thus
that MIB must be loaded as well.