檢視原始碼 snmpa_supervisor (snmp v5.18)
SNMP agent 處理程序的監管者
這是 SNMP 應用程式代理程式部分的頂層監管者。在每個具有 SNMP 代理程式(主代理程式或子代理程式)的節點上總會有一個監管者。
摘要
函式
啟動 SNMP 代理程式系統的監管者。此監管者會啟動所有相關的 SNMP 處理程序,包括主代理程式。子代理程式應透過呼叫 start_subagent/3
來啟動。
在呼叫此函式的節點上啟動子代理程式。snmpa_supervisor
必須正在執行。
啟動沒有主代理程式的 SNMP 代理程式系統的監管者。此監管者會啟動所有相關的 SNMP 代理程式處理程序,但不啟動任何代理程式處理程序。子代理程式應透過呼叫 start_sub_agent/3
來啟動。
停止在呼叫此函式的節點上的子代理程式。snmpa_supervisor
必須正在執行。
函式
-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
是必填的。
config 中的 dir
是必填的。
有關選項的說明,請參閱 snmp config。
-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
是必填的。
有關選項的說明,請參閱 組態參數。
-spec stop_sub_agent(SubAgentPid) -> ok | no_such_child when SubAgentPid :: pid().
停止在呼叫此函式的節點上的子代理程式。snmpa_supervisor
必須正在執行。
如果監管者沒有執行,此函式會因 badarg
的原因而失敗。