查看源代码 snmpa_supervisor (snmp v5.18)

SNMP 代理进程的监管器

这是 SNMP 应用的代理部分的顶级监管器。在每个具有 SNMP 代理(主代理或子代理)的节点上始终存在一个监管器。

概要

函数

启动 SNMP 代理系统的监管器。监管器启动所有相关的 SNMP 进程,包括主代理。子代理应通过调用 start_subagent/3 启动。

在调用该函数的节点上启动一个子代理。 snmpa_supervisor 必须正在运行。

启动不带主代理的 SNMP 代理系统的监管器。监管器启动所有相关的 SNMP 代理进程,但不启动任何代理进程。子代理应通过调用 start_sub_agent/3 启动。

停止在调用该函数的节点上的子代理。 snmpa_supervisor 必须正在运行。

函数

链接到此函数

start_master_sup(Opts)

查看源代码
-spec start_master_sup(Opts) -> {ok, Pid} | {error, Reason}
                          when
                              Opts :: [Opt],
                              Opt :: {db_dir, string()} | {config, ConfOpts} | {atom(), term()},
                              ConfOpts :: [ConfOpt],
                              ConfOpt :: {dir, string()} | {atom(), term()},
                              Pid :: pid(),
                              Reason :: {already_started, Pid} | term().

启动 SNMP 代理系统的监管器。监管器启动所有相关的 SNMP 进程,包括主代理。子代理应通过调用 start_subagent/3 启动。

db_dir 是强制性的。

配置中的 dir 是强制性的。

有关选项的描述,请参阅 snmp 配置

链接到此函数

start_sub_agent(ParentAgent, Subtree, Mibs)

查看源代码
-spec start_sub_agent(ParentAgent, Subtree, Mibs) -> {ok, Pid} | {error, Reason}
                         when
                             ParentAgent :: pid(),
                             Subtree :: snmp:oid(),
                             Mibs :: [MibName],
                             MibName :: string(),
                             Pid :: pid(),
                             Reason :: term().

在调用该函数的节点上启动一个子代理。 snmpa_supervisor 必须正在运行。

如果监管器未运行,则该函数将因 badarg 原因而失败。

-spec start_sub_sup(Opts) -> {ok, Pid} | {error, Reason}
                       when
                           Opts :: [Opt],
                           Opt :: {db_dir, snmp:dir()} | {atom(), term()},
                           Pid :: pid(),
                           Reason :: {already_started, Pid} | term().

启动不带主代理的 SNMP 代理系统的监管器。监管器启动所有相关的 SNMP 代理进程,但不启动任何代理进程。子代理应通过调用 start_sub_agent/3 启动。

db_dir 是强制性的。

有关选项的描述,请参阅配置参数

链接到此函数

stop_sub_agent(SubAgentPid)

查看源代码
-spec stop_sub_agent(SubAgentPid) -> ok | no_such_child when SubAgentPid :: pid().

停止在调用该函数的节点上的子代理。 snmpa_supervisor 必须正在运行。

如果监管器未运行,则该函数将因 badarg 原因而失败。