diff options
Diffstat (limited to 'lib/snmp/doc/src/snmp_config.xml')
-rw-r--r-- | lib/snmp/doc/src/snmp_config.xml | 139 |
1 files changed, 88 insertions, 51 deletions
diff --git a/lib/snmp/doc/src/snmp_config.xml b/lib/snmp/doc/src/snmp_config.xml index 79c6703c94..e3d74fec16 100644 --- a/lib/snmp/doc/src/snmp_config.xml +++ b/lib/snmp/doc/src/snmp_config.xml @@ -43,8 +43,8 @@ </list> <p>Refer also to the chapter(s) - <seealso marker="snmp_agent_config_files">Definition of Agent Configuration Files</seealso> and - <seealso marker="snmp_manager_config_files">Definition of Manager Configuration Files</seealso> which contains more detailed information + <seeguide marker="snmp_agent_config_files">Definition of Agent Configuration Files</seeguide> and + <seeguide marker="snmp_manager_config_files">Definition of Manager Configuration Files</seeguide> which contains more detailed information about the agent and manager configuration files.</p> <section> @@ -56,7 +56,7 @@ <item> <p>the <em>configuration directory</em> stores all configuration files used by the agent (refer to the chapter - <seealso marker="snmp_agent_config_files">Definition of Agent Configuration Files</seealso> for more information). </p> + <seeguide marker="snmp_agent_config_files">Definition of Agent Configuration Files</seeguide> for more information). </p> </item> <item>the <em>database directory</em> stores the internal database files.</item> @@ -67,7 +67,7 @@ <item> <p>the <em>configuration directory</em> stores all configuration files used by the manager (refer to the chapter - <seealso marker="snmp_manager_config_files">Definition of Manager Configuration Files</seealso> for more information). </p> + <seeguide marker="snmp_manager_config_files">Definition of Manager Configuration Files</seeguide> for more information). </p> </item> <item> <p>the <em>database directory</em> stores the internal @@ -184,10 +184,35 @@ </item> <tag><marker id="agent_mt"></marker> - <c><![CDATA[multi_threaded() = bool() <optional>]]></c></tag> + <c><![CDATA[multi_threaded() = bool() | extended<optional>]]></c></tag> <item> - <p>If <c>true</c>, the agent is multi-threaded, with one - thread for each get request. </p> + <p>If <c>true</c> (or <c>extended</c>), the agent is multi-threaded, + with one thread for each get request. </p> + <p>The value <c>extended</c> means that a special 'process' + is also created intended to handle <em>all</em> notifications. </p> + <list> + <item> + <p><c>true</c> - One worker dedicated to 'set-requests' and one + (main) worker for all other requests ('get-request' and + notifications).</p> + <p>If the 'main' worker is busy, a temporary process is + spawned to handle that job ('get-request' or notification). </p> + </item> + <item> + <p><c>extended</c> - One worker dedicated to 'set-requests', + one worker dedicated to notifications and one + (main) worker for all 'get-requests'. </p> + <p>If the 'main' worker is busy, a temporary process is + spawned to handle that 'get-request'. </p> + </item> + </list> + <note> + <p>Even with multi-threaded set to <c>extended</c> + there is still a risk for 'reorder' when sending inform-requsts, + which require a response (and may therefor require resending). </p> + <p>Also, there is of course no way to guarantee order once the + package is on the network. </p> + </note> <p>Default is <c>false</c>.</p> </item> @@ -248,7 +273,7 @@ <item> <p>Module which handles the network interface part for the SNMP agent. Must implement the - <seealso marker="snmpa_network_interface">snmpa_network_interface</seealso> behaviour.</p> + <seeerl marker="snmpa_network_interface">snmpa_network_interface</seeerl> behaviour.</p> <p>Default is <c>snmpa_net_if</c>.</p> </item> @@ -256,15 +281,22 @@ <c><![CDATA[agent_net_if_options() = [agent_net_if_option()] <optional>]]></c></tag> <item> <p><c>agent_net_if_option() = {bind_to, bind_to()} | - {sndbuf, sndbuf()} | - {recbuf, recbuf()} | - {no_reuse, no_reuse()} | - {req_limit, req_limit()} | - {filter, agent_net_if_filter_options()} | - {extra_sock_opts, extra_socket_options()}</c></p> + {sndbuf, sndbuf()} | + {recbuf, recbuf()} | + {no_reuse, no_reuse()} | + {req_limit, req_limit()} | + {filter, agent_net_if_filter_options()} | + {extra_sock_opts, extra_socket_options()}</c></p> <p>These options are actually specific to the used module. - The ones shown here are applicable to the default - <c>agent_net_if_module()</c>.</p> + The ones shown here are applicable to the default + <c>agent_net_if_module()</c>.</p> + <note> + <p>If the user has configured transports <em>with</em> options + then those will take precedence over these options. + See + <seeguide marker="snmp_agent_config_files#agent_information">agent information</seeguide> + for more info. </p> + </note> <p>For defaults see the options in <c>agent_net_if_option()</c>.</p> </item> @@ -290,8 +322,8 @@ <item> <p>Module which handles the network interface filter part for the SNMP agent. Must implement the - <seealso marker="snmpa_network_interface_filter">snmpa_network_interface_filter - </seealso> behaviour.</p> + <seeerl marker="snmpa_network_interface_filter">snmpa_network_interface_filter + </seeerl> behaviour.</p> <p>Default is <c>snmpa_net_if_filter</c>.</p> </item> @@ -324,7 +356,7 @@ <c><![CDATA[mib_storage_module() = snmpa_mib_data_ets | snmpa_mib_data_dets | snmpa_mib_data_mnesia | module()]]></c></tag> <item> <p>Defines the mib storage module of the SNMP agent as defined by the - <seealso marker="snmpa_mib_storage">snmpa_mib_storage</seealso> + <seeerl marker="snmpa_mib_storage">snmpa_mib_storage</seeerl> behaviour. </p> <p>Several entities (<c>mib-server</c> via the its data module and the <c>symbolic-store</c>) of the snmp agent uses this for storage @@ -495,7 +527,7 @@ in so far as it will be converted to the new format if found. <item> <p>Defines the backend data module of the SNMP agent mib-server as defined by the - <seealso marker="snmpa_mib_data">snmpa_mib_data</seealso> + <seeerl marker="snmpa_mib_data">snmpa_mib_data</seeerl> behaviour. </p> <p>At present only the default module is provided with the agent, <c>snmpa_mib_data_tttn</c>. </p> @@ -529,7 +561,7 @@ in so far as it will be converted to the new format if found. <item> <p>Defines if the mib server shall perform cache gc automatically or leave it to the user (see - <seealso marker="snmpa#gc_mibs_cache">gc_mibs_cache/0,1,2,3</seealso>). </p> + <seeerl marker="snmpa#gc_mibs_cache">gc_mibs_cache/0,1,2,3</seeerl>). </p> <p>Default is <c>true</c>.</p> </item> @@ -544,21 +576,26 @@ in so far as it will be converted to the new format if found. </item> <tag><marker id="agent_ms_cache_gclimit"></marker> - <c><![CDATA[mibs_cache_gclimit() = integer() > 0 | infinity <optional>]]></c></tag> + <c><![CDATA[mibs_cache_gclimit() = infinity | integer() > 0 <optional>]]></c></tag> <item> <p>When performing a GC, this is the max number of cache entries that will be deleted from the cache. </p> - <p>The reason for having this limit is that if the cache is + + <p>The reason why its possible to set a limit, is that if the cache is large, the GC can potentially take a long time, during which - the agent is locked. </p> - <p>Default is <c>100</c>.</p> + the agent is "busy". + <em>But</em> on a heavily loaded system, we also risk not removing + enough elements in the cache, instead causing it to grow over time. + This is the reason the default value is <c>infinity</c>, which will + ensure that <em>all</em> candidates are removed as soon as possible. </p> + <p>Default is <c>infinity</c>.</p> </item> <tag><marker id="agent_error_report_mod"></marker> <c><![CDATA[error_report_mod() = atom() <optional>]]></c></tag> <item> <p>Defines an error report module, implementing the - <seealso marker="snmpa_error_report">snmpa_error_report</seealso> + <seeerl marker="snmpa_error_report">snmpa_error_report</seeerl> behaviour. Two modules are provided with the toolkit: <c>snmpa_error_logger</c> and <c>snmpa_error_io</c>.</p> <p>Default is <c>snmpa_error_logger</c>.</p> @@ -631,9 +668,9 @@ in so far as it will be converted to the new format if found. The information will have a <em>best before</em> time, defined by the <c>Expire</c> time given when calling the request function (see - <seealso marker="snmpm#async_get">async_get</seealso>, - <seealso marker="snmpm#async_get_next">async_get_next</seealso> and - <seealso marker="snmpm#async_set">async_set</seealso>).</p> + <seeerl marker="snmpm#async_get2">async_get</seeerl>, + <seeerl marker="snmpm#async_get_next2">async_get_next</seeerl> and + <seeerl marker="snmpm#async_set2">async_set</seeerl>).</p> <p>Time in milli-seconds.</p> <p>Default is <c>30000</c>.</p> </item> @@ -666,7 +703,7 @@ in so far as it will be converted to the new format if found. net-if process. Note that this will only work if the used net-if process actually supports the protocol. See - <seealso marker="snmpm_network_interface">snmpm_network_interface</seealso> behaviour for more info. </p> + <seeerl marker="snmpm_network_interface">snmpm_network_interface</seeerl> behaviour for more info. </p> <taglist> <tag><marker id="manager_server_nis_none"></marker> <c><![CDATA[none (default)]]></c></tag> @@ -679,12 +716,12 @@ in so far as it will be converted to the new format if found. <item> <p>The <c>PingTO</c> time specifies the between a successful ping (or start) and the time when a - <seealso marker="snmp_manager_netif#im_ping">ping</seealso> + <seeguide marker="snmp_manager_netif#im_ping">ping</seeguide> message is to be sent to the net-if process (basically the time between ping:s). </p> <p>The <c>PongTO</c> time specifies how long time the net-if process has to respond to a ping message, with a - <seealso marker="snmp_manager_netif#om_pong">pong</seealso> + <seeguide marker="snmp_manager_netif#om_pong">pong</seeguide> message. It starts counting when the ping message has been sent.</p> <p>Both times are in milli seconds.</p> @@ -742,7 +779,7 @@ in so far as it will be converted to the new format if found. <item> <p><c>{user, integer()}</c> - The manager will send response (acknowledgment) to inform-request messages when the - <seealso marker="snmpm_user#handle_inform">handle_inform</seealso> + <seeerl marker="snmpm_user#handle_inform">handle_inform</seeerl> function completes. The integer is the time, in milli-seconds, that the manager will consider the stored inform-request info valid.</p> @@ -753,9 +790,9 @@ in so far as it will be converted to the new format if found. </item> </list> <p>See - <seealso marker="snmpm_network_interface">snmpm_network_interface</seealso>, - <seealso marker="snmpm_user">handle_inform</seealso> and - <seealso marker="snmp_manager_netif">definition of the manager net if</seealso> for more info.</p> + <seeerl marker="snmpm_network_interface">snmpm_network_interface</seeerl>, + <seeerl marker="snmpm_user">handle_inform</seeerl> and + <seeguide marker="snmp_manager_netif">definition of the manager net if</seeguide> for more info.</p> <p>Default is <c>auto</c>.</p> </item> @@ -798,7 +835,7 @@ in so far as it will be converted to the new format if found. <item> <p>The module which handles the network interface part for the SNMP manager. It must implement the - <seealso marker="snmpm_network_interface">snmpm_network_interface</seealso> behaviour. </p> + <seeerl marker="snmpm_network_interface">snmpm_network_interface</seeerl> behaviour. </p> <p>Default is <c>snmpm_net_if</c>. </p> </item> @@ -818,7 +855,7 @@ in so far as it will be converted to the new format if found. <item> <p>Module which handles the network interface filter part for the SNMP manager. Must implement the - <seealso marker="snmpm_network_interface_filter">snmpm_network_interface_filter</seealso> behaviour.</p> + <seeerl marker="snmpm_network_interface_filter">snmpm_network_interface_filter</seeerl> behaviour.</p> <p>Default is <c>snmpm_net_if_filter</c>.</p> </item> @@ -826,7 +863,7 @@ in so far as it will be converted to the new format if found. <c><![CDATA[def_user_module() = atom() <optional>]]></c></tag> <item> <p>The module implementing the default user. See the - <seealso marker="snmpm_user">snmpm_user</seealso> behaviour.</p> + <seeerl marker="snmpm_user">snmpm_user</seeerl> behaviour.</p> <p>Default is <c>snmpm_user_default</c>.</p> </item> @@ -845,7 +882,7 @@ in so far as it will be converted to the new format if found. <tag><marker id="restart_type"></marker> <c>restart_type() = permanent | transient | temporary</c></tag> <item> - <p>See <seealso marker="stdlib:supervisor#child_spec">supervisor</seealso> + <p>See <seeerl marker="stdlib:supervisor#child_spec">supervisor</seeerl> documentation for more info.</p> <p>Default is <c>permanent</c> for the agent and <c>transient</c> for the manager.</p> @@ -1224,7 +1261,7 @@ ok application). This is done by calling the <c>snmpa:verbosity/2</c> and <c>snmpm:verbosity/2</c> function(s) and/or using - <seealso marker="#configuration_params">configuration parameters</seealso>. + <seeguide marker="#configuration_params">configuration parameters</seeguide>. The verbosity itself has several <em>levels</em>: <c>silence | info | log | debug | trace</c>. For the lowest verbosity <c>silence</c>, nothing is printed. The higher the verbosity, the more is printed. Default value is always <c>silence</c>.</p> @@ -1265,37 +1302,37 @@ ok <taglist> <tag><c><![CDATA[snmpa:info/0,1]]></c></tag> <item> - <p><seealso marker="snmpa#info">info</seealso> is used to retrieve a list of miscellaneous agent information.</p> + <p><seeerl marker="snmpa#info">info</seeerl> is used to retrieve a list of miscellaneous agent information.</p> </item> <tag><c><![CDATA[snmpa:which_aliasnames/0]]></c></tag> <item> - <p><seealso marker="snmpa#which_aliasnames">which_aliasnames</seealso> is used to retrieve a list of all alias-names known to the agent. </p> + <p><seeerl marker="snmpa#which_aliasnames">which_aliasnames</seeerl> is used to retrieve a list of all alias-names known to the agent. </p> </item> <tag><c><![CDATA[snmpa:which_tables/0]]></c></tag> <item> - <p><seealso marker="snmpa#which_tables">which_tables</seealso> is used to retrieve a list of all (MIB) tables known to the agent. </p> + <p><seeerl marker="snmpa#which_tables">which_tables</seeerl> is used to retrieve a list of all (MIB) tables known to the agent. </p> </item> <tag><c><![CDATA[snmpa:which_variables/0]]></c></tag> <item> - <p><seealso marker="snmpa#which_variables">which_variables</seealso> is used to retrieve a list of all (MIB) variables known to the agent. </p> + <p><seeerl marker="snmpa#which_variables">which_variables</seeerl> is used to retrieve a list of all (MIB) variables known to the agent. </p> </item> <tag><c><![CDATA[snmpa:which_notifications/0]]></c></tag> <item> - <p><seealso marker="snmpa#which_notifications">which_notifications</seealso> is used to retrieve a list of all (MIB) notifications/traps known to the agent. </p> + <p><seeerl marker="snmpa#which_notifications">which_notifications</seeerl> is used to retrieve a list of all (MIB) notifications/traps known to the agent. </p> </item> <tag><c><![CDATA[snmpa:restart_worker/0,1]]></c></tag> <item> - <p><seealso marker="snmpa#restart_worker">restart_worker</seealso> is used to restart the worker process of a multi-threaded agent. </p> + <p><seeerl marker="snmpa#restart_worker">restart_worker</seeerl> is used to restart the worker process of a multi-threaded agent. </p> </item> <tag><c><![CDATA[snmpa:restart_set_worker/0,1]]></c></tag> <item> - <p><seealso marker="snmpa#restart_set_worker">restart_set_worker</seealso> is used to restart the set-worker process of a multi-threaded agent. </p> + <p><seeerl marker="snmpa#restart_set_worker">restart_set_worker</seeerl> is used to restart the set-worker process of a multi-threaded agent. </p> </item> <tag><c><![CDATA[snmpa_local_db:print/0,1,2]]></c></tag> @@ -1310,10 +1347,10 @@ ok This can be done by simply calling: </p> <p><c><![CDATA[snmpa:print_mib_info()]]></c></p> <p>See - <seealso marker="snmpa#print_mib_info">print_mib_info/0</seealso>, - <seealso marker="snmpa#print_mib_tables">print_mib_tables/0</seealso> + <seeerl marker="snmpa#print_mib_info">print_mib_info/0</seeerl>, + <seeerl marker="snmpa#print_mib_tables">print_mib_tables/0</seeerl> or - <seealso marker="snmpa#print_mib_variables">print_mib_variables/0</seealso> + <seeerl marker="snmpa#print_mib_variables">print_mib_variables/0</seeerl> for more info. </p> </section> |