檢視原始碼 snmp_target_mib (snmp v5.18)

SNMP-TARGET-MIB 的儀器功能

模組 snmp_target_mib 實作 SNMP-TARGET-MIB 的儀器功能,以及設定資料庫的功能。

組態檔案的說明請參閱 SNMP 使用者手冊。

舊版 API 函式 add_addr/10 未指定傳輸域,以及具有獨立 IpAddrPortNumber 引數的 add_addr/11,由於向後相容性的考量,仍如之前一樣運作。

資料類型

請參閱 snmpa_conf 中的資料類型

摘要

類型

注意

「與 snmpTargetAddrTable 中項目相關聯的最大訊息大小值。」。

注意

「與此 snmpTargetAddrEntry 相關聯的本機任意但唯一的識別符。」

注意

「此物件的值會識別 snmpTargetParamsTable 中的項目。」

注意

「此物件指定當未收到產生訊息的回應時,要嘗試的預設重試次數。」

注意

「一個包含標籤值清單的八位元字串。標籤值最好是人類可讀的形式。」

注意

「一個包含標籤值的八位元字串。標籤值最好是人類可讀的形式。」

注意

「與 snmpTargetAddrTable 中項目相關聯的遮罩值。此物件的值長度必須與對應的 snmpTargetAddrTAddress 實例相同,或長度必須為 0。」

函式

將目標位址定義新增至代理程式組態。相當於 target_addr.conf 檔案中的一行。

將目標參數定義新增至代理程式組態。相當於 target_params.conf 檔案中的一行。

此函式會在系統啟動時由監管者呼叫。

從代理程式組態中刪除目標位址定義。

從代理程式組態中刪除目標參數定義。

將組態檔案中的所有資料插入資料庫,並銷毀所有舊資料,包括具有 StorageType nonVolatile 的列。從組態檔案建立的列將具有 StorageType nonVolatile

變更 snmpTargetAddrTable 中目標的引擎 ID。如果通知以 Inform 請求的形式傳送至目標,則必須設定其引擎 ID。

類型

-type mms() :: 484..65535.

注意

「與 snmpTargetAddrTable 中項目相關聯的最大訊息大小值。」。

Integer32 (484..65535)

-type name() :: snmp_framework_mib:admin_string().

注意

「與此 snmpTargetAddrEntry 相關聯的本機任意但唯一的識別符。」

SnmpAdminString (SIZE(1..32))

-type params() :: snmp_framework_mib:admin_string().

注意

「此物件的值會識別 snmpTargetParamsTable 中的項目。」

SnmpAdminString (SIZE(1..32))

-type retry_count() :: 0..255.

注意

「此物件指定當未收到產生訊息的回應時,要嘗試的預設重試次數。」

Integer32 (0..255)

-type tag_list() :: string().

注意

「一個包含標籤值清單的八位元字串。標籤值最好是人類可讀的形式。」

「為了促進國際化,此資訊使用 ISO/IEC IS 10646-1 字元集表示,並使用 RFC 2279 中描述的 UTF-8 字元編碼方案編碼為八位元字串。」

OCTET STRING (SIZE (0..255))

-type tag_value() :: string().

注意

「一個包含標籤值的八位元字串。標籤值最好是人類可讀的形式。」

OCTET STRING (SIZE (0..255))

-type tmask() :: snmpa_conf:transportAddressMask().

注意

「與 snmpTargetAddrTable 中項目相關聯的遮罩值。此物件的值長度必須與對應的 snmpTargetAddrTAddress 實例相同,或長度必須為 0。」

OCTET STRING (SIZE (0..255))

函式

-spec add_addr(Name, TDomain, TAddr, Timeout, Retry, TagList, Params, EngineId, TMask, MMS) ->
                  {ok, Key} | {error, Reason}
                  when
                      Name :: name(),
                      TDomain :: snmpa_conf:transportDomain(),
                      TAddr :: snmpa_conf:transportAddress(),
                      Timeout :: snmp:time_interval(),
                      Retry :: integer(),
                      TagList :: tag_list(),
                      Params :: params(),
                      EngineId :: snmp_framework_mib:engine_id(),
                      TMask :: tmask(),
                      MMS :: snmp_framework_mib:max_message_size(),
                      Key :: term(),
                      Reason :: term();
              (Name, Ip, Port, Timeout, Retry, TagList, Params, EngineId, TMask, MMS) ->
                  {ok, Key} | {error, Reason}
                  when
                      Name :: name(),
                      Ip :: snmpa_conf:transportAddressWithoutPort(),
                      Port :: inet:port_number(),
                      Timeout :: snmp:time_interval(),
                      Retry :: integer(),
                      TagList :: tag_list(),
                      Params :: params(),
                      EngineId :: snmp_framework_mib:engine_id(),
                      TMask :: tmask(),
                      MMS :: snmp_framework_mib:max_message_size(),
                      Key :: term(),
                      Reason :: term().

將目標位址定義新增至代理程式組態。相當於 target_addr.conf 檔案中的一行。

此函式的連結

add_params(Name, MPModel, SecModel, SecName, SecLevel)

檢視原始碼
-spec add_params(Name, MPModel, SecModel, SecName, SecLevel) -> {ok, Key} | {error, Reason}
                    when
                        Name :: name(),
                        MPModel :: snmp_framework_mib:message_processing_model(),
                        SecModel :: snmp_framework_mib:security_model(),
                        SecName :: snmp_framework_mib:admin_string(),
                        SecLevel :: snmp_framework_mib:security_level(),
                        Key :: term(),
                        Reason :: term().

將目標參數定義新增至代理程式組態。相當於 target_params.conf 檔案中的一行。

-spec configure(ConfDir) -> snmp:void() when ConfDir :: string().

此函式會在系統啟動時由監管者呼叫。

將組態檔案中的所有資料插入資料庫,並銷毀所有具有 StorageType volatile 的舊列。從組態檔案建立的列將具有 StorageType nonVolatile

所有 snmp 計數器都會設為零。

如果在組態檔案中發現錯誤,則會使用錯誤回報模組的函式 config_err/2 回報,且函式會因原因 configuration_error 而失敗。

ConfDir 是一個字串,指向組態檔案所在的目錄。

讀取的組態檔案為:target_addr.conftarget_params.conf

-spec delete_addr(Key) -> ok | {error, Reason} when Key :: term(), Reason :: term().

從代理程式組態中刪除目標位址定義。

-spec delete_params(Key) -> ok | {error, Reason} when Key :: term(), Reason :: term().

從代理程式組態中刪除目標參數定義。

-spec reconfigure(ConfDir) -> snmp:void() when ConfDir :: string().

將組態檔案中的所有資料插入資料庫,並銷毀所有舊資料,包括具有 StorageType nonVolatile 的列。從組態檔案建立的列將具有 StorageType nonVolatile

因此,在呼叫此函式後,SNMP-TARGET-MIB 中的資料為組態檔案中的資料。

所有 snmp 計數器都會設為零。

如果在組態檔案中發現錯誤,則會使用 的函式 config_err/2 回報,且函式會因原因 configuration_error 而失敗。

ConfDir 是一個字串,指向組態檔案所在的目錄。

讀取的組態檔案為:target_addr.conftarget_params.conf

此函式的連結

set_target_engine_id(TargetAddrName, EngineId)

檢視原始碼
-spec set_target_engine_id(TargetAddrName, EngineId) -> boolean()
                              when TargetAddrName :: name(), EngineId :: snmp_framework_mib:engine_id().

變更 snmpTargetAddrTable 中目標的引擎 ID。如果通知以 Inform 請求的形式傳送至目標,則必須設定其引擎 ID。