1SNMP(7)                  Erlang Application Definition                 SNMP(7)
2
3
4

NAME

6       SNMP - The SNMP Application
7

DESCRIPTION

9       This  chapter  describes the snmp application in OTP. The SNMP applica‐
10       tion provides the following services:
11
12         * a multilingual extensible SNMP agent
13
14         * a SNMP manager
15
16         * a MIB compiler
17

CONFIGURATION

19       The following configuration parameters are defined for the SNMP  appli‐
20       cation.  Refer  to application(3) for more information about configura‐
21       tion parameters.
22
23       The snmp part of the config file specifying the  configuration  parame‐
24       ters is basically the following tuple:
25
26             {snmp, snmp_components_config()}
27
28
29       A  minimal  config  file for starting a node with both a manager and an
30       agent:
31
32             [{snmp,
33               [{agent, [{db_dir, "/tmp/snmp/agent/db"},
34                         {config, [{dir, "/tmp/snmp/agent/conf"}]}]},
35                {manager, [{config, [{dir, "/tmp/snmp/manager/conf"},
36                                     {db_dir, "/tmp/snmp/manager/db"}]}]}]}
37               ]
38              }
39             ].
40
41
42       Each snmp component has its own set of configuration  parameters,  even
43       though some of the types are common to both components.
44
45             snmp_components_config() -> [snmp_component_config()]
46             snmp_component_config() -> {agent, agent_options()} | {manager, manager_options()}
47             agent_options() = [agent_option()]
48             agent_option() = {restart_type,     restart_type()}     |
49                              {agent_type,       agent_type()}       |
50                              {agent_verbosity,  verbosity()}        |
51                              {discovery,        agent_discovery()}  |
52                              {versions,         versions()}         |
53                              {gb_max_vbs,       gb_max_vbs()}       |
54                              {priority,         priority()}         |
55                              {multi_threaded,   multi_threaded()}   |
56                              {db_dir,           db_dir()}           |
57                              {db_init_error,    db_init_error()}    |
58                              {local_db,         local_db()}         |
59                              {net_if,           agent_net_if()}     |
60                              {mibs,             mibs()}             |
61                              {mib_storage,      mib_storage()}      |
62                              {mib_server,       mib_server()}       |
63                              {audit_trail_log,  audit_trail_log()}  |
64                              {error_report_mod, error_report_mod()} |
65                              {note_store,       note_store()}       |
66                              {symbolic_store,   symbolic_store()}   |
67                              {target_cache,     target_cache()}     |
68                              {config,           agent_config()}
69             manager_options() = [manager_option()]
70             manager_option() = {restart_type,             restart_type()}    |
71                                {net_if,                   manager_net_if()}  |
72                                {server,                   server()}          |
73                                {note_store,               note_store()}      |
74                                {config,                   manager_config()}  |
75                                {inform_request_behaviour, manager_irb()}     |
76                                {mibs,                     manager_mibs()}    |
77                                {priority,                 priority()}        |
78                                {audit_trail_log,          audit_trail_log()} |
79                                {versions,                 versions()}        |
80                                {def_user_mod,             def_user_module()  |
81                                {def_user_data,            def_user_data()}
82
83
84       Agent specific config options and types:
85
86         agent_type() = master | sub <optional>:
87           If  master,  one  master agent is started. Otherwise, no agents are
88           started.
89
90           Default is master.
91
92         agent_discovery() = [agent_discovery_opt()] <optional>:
93           agent_discovery_opt()  =  {terminating,   agent_terminating_discov‐
94           ery_opts()} | {originating, agent_originating_discovery_opts()}
95
96           The terminating options effects discovery initiated by a manager.
97
98           The originating options effects discovery initiated by this agent.
99
100           For defaults see the options in agent_discovery_opt().
101
102         agent_terminating_discovery_opts()    =    [agent_terminating_discov‐
103         ery_opt()] <optional>:
104           agent_terminating_discovery_opt() = {enable, boolean()} |  {stage2,
105           discovery | plain} | {trigger_username, string()}
106
107           These  are  options  effecting  discovery terminating in this agent
108           (i.e. initiated by a manager).
109
110           The default values for the terminating discovery options are:
111
112           * enable: true
113
114           * stage2: discovery
115
116           * trigger_username: ""
117
118         agent_originating_discovery_opts()    =    [agent_originating_discov‐
119         ery_opt()] <optional>:
120           agent_originating_discovery_opt() = {enable, boolean()}
121
122           These are options effecting discovery originating in this agent.
123
124           The default values for the originating discovery options are:
125
126           * enable: true
127
128         multi_threaded() = bool() | extended <optional>:
129           If true (or extended), the agent is multi-threaded, with one thread
130           for each get request.
131
132           The value extended means that a special 'process' is  also  created
133           intended to handle all notifications.
134
135           * true  -  One  worker  dedicated  to 'set-requests' and one (main)
136             worker for all other requests ('get-request' and notifications).
137
138             If the 'main' worker is busy, a temporary process is  spawned  to
139             handle that job ('get-request' or notification).
140
141           * extended  -  One  worker  dedicated to 'set-requests', one worker
142             dedicated to notifications and one (main) worker  for  all  'get-
143             requests'.
144
145             If  the  'main' worker is busy, a temporary process is spawned to
146             handle that 'get-request'.
147
148     Note:
149         Even with multi-threaded set to extended there is still  a  risk  for
150         'reorder'  when sending inform-requsts, which require a response (and
151         may therefor require resending).
152
153         Also, there is of course no way to guarantee order once  the  package
154         is on the network.
155
156
157           Default is false.
158
159         db_dir() = string() <mandatory>:
160           Defines where the SNMP agent internal db files are stored.
161
162         gb_max_vbs() = pos_integer() | infinity <optional>:
163           Defines  the  maximum  number  of  varbinds  allowed  in a Get-BULK
164           response.
165
166           Default is 1000.
167
168         local_db() = [local_db_opt()] <optional>:
169           local_db_opt()   =   {repair,   agent_repair()}    |    {auto_save,
170           agent_auto_save()} | {verbosity, verbosity()}
171
172           Defines options specific for the SNMP agent local database.
173
174           For defaults see the options in local_db_opt().
175
176         agent_repair() = false | true | force <optional>:
177           When  starting  snmpa_local_db  it always tries to open an existing
178           database. If false, and some errors occur, a new database  is  cre‐
179           ated instead. If true, an existing file will be repaired. If force,
180           the table will be repaired even if it was properly closed.
181
182           Default is true.
183
184         agent_auto_save() = integer() | infinity <optional>:
185           The auto save interval. The table is flushed to disk  whenever  not
186           accessed for this amount of time.
187
188           Default is 5000.
189
190         agent_net_if() = [agent_net_if_opt()] <optional>:
191           agent_net_if_opt()  = {module, agent_net_if_module()} | {verbosity,
192           verbosity()} | {options, agent_net_if_options()}
193
194           Defines options specific  for  the  SNMP  agent  network  interface
195           entity.
196
197           For defaults see the options in agent_net_if_opt().
198
199         agent_net_if_module() = atom() <optional>:
200           Module which handles the network interface part for the SNMP agent.
201           Must implement the snmpa_network_interface behaviour.
202
203           Default is snmpa_net_if.
204
205         agent_net_if_options() = [agent_net_if_option()] <optional>:
206           agent_net_if_option() = {bind_to, bind_to()} | {sndbuf, sndbuf()} |
207           {recbuf,   recbuf()}   |   {no_reuse,   no_reuse()}  |  {req_limit,
208           req_limit()}   |    {filter,    agent_net_if_filter_options()}    |
209           {extra_sock_opts, extra_socket_options()}
210
211           These  options  are  actually specific to the used module. The ones
212           shown here are applicable to the default agent_net_if_module().
213
214     Note:
215         If the user has configured transports with options  then  those  will
216         take  precedence  over  these options. See agent information for more
217         info.
218
219
220           For defaults see the options in agent_net_if_option().
221
222         req_limit() = integer() | infinity <optional>:
223           Max number of simultaneous requests handled by the agent.
224
225           Default is infinity.
226
227         agent_net_if_filter_options()    =     [agent_net_if_filter_option()]
228         <optional>:
229           agent_net_if_filter_option()  =  {module,  agent_net_if_filter_mod‐
230           ule()}
231
232           These options are actually specific to the used  module.  The  ones
233           shown  here  are applicable to the default agent_net_if_filter_mod‐
234           ule().
235
236           For defaults see the options in agent_net_if_filter_option().
237
238         agent_net_if_filter_module() = atom() <optional>:
239           Module which handles the network interface filter part for the SNMP
240           agent. Must implement the snmpa_network_interface_filter behaviour.
241
242           Default is snmpa_net_if_filter.
243
244         agent_mibs() = [string()] <optional>:
245           Specifies  a  list of MIBs (including path) that defines which MIBs
246           are initially loaded into the SNMP master agent.
247
248           Note that the following mibs will always be loaded:
249
250           * version v1: STANDARD-MIB
251
252           * version v2: SNMPv2
253
254           * version v3: SNMPv2, SNMP-FRAMEWORK-MIB and SNMP-MPD-MIB
255
256           Default is [].
257
258         mib_storage() = [mib_storage_opt()] <optional>:
259           mib_storage_opt()  =  {module,  mib_storage_module()}  |  {options,
260           mib_storage_options()}
261
262           This  option specifies how basic mib data is stored. This option is
263           used by two parts of the snmp agent: The mib-server  and  the  sym‐
264           bolic-store.
265
266           Default is [{module, snmpa_mib_storage_ets}].
267
268         mib_storage_module()  =  snmpa_mib_data_ets  |  snmpa_mib_data_dets |
269         snmpa_mib_data_mnesia | module():
270           Defines the mib storage module of the SNMP agent as defined by  the
271           snmpa_mib_storage behaviour.
272
273           Several  entities  (mib-server via the its data module and the sym‐
274           bolic-store) of the snmp agent uses this for  storage  of  miscela‐
275           neous mib related data retrieved while loading a mib.
276
277           There   are   several  implementations  provided  with  the  agent:
278           snmpa_mib_storage_ets, snmpa_mib_storage_dets  and  snmpa_mib_stor‐
279           age_mnesia.
280
281           Default module is snmpa_mib_storage_ets.
282
283         mib_storage_options() = list() <optional>:
284           This  is  implementattion depended. That is, it depends on the mod‐
285           ule. For each module a specific set of options are valid.  For  the
286           module provided with the app, these options are supported:
287
288           * snmpa_mib_storage_ets:   {dir,  filename()}  |  {action,  keep  |
289             clear}, {checksum, boolean()}
290
291             * dir - If present, points to a directory where a file  to  which
292               all data in the ets table is "synced".
293
294               Also, when a table is opened this file is read, if it exists.
295
296               By default, this will not be used.
297
298             * action  -  Specifies  the  behaviour  when  a non-empty file is
299               found: Keep its content or clear it out.
300
301               Default is keep.
302
303             * checksum - Defines if the file is checksummed or not.
304
305               Default is false.
306
307           * snmpa_mib_storage_dets:  {dir,  filename()}  |  {action,  keep  |
308             clear},  {auto_save,  default | pos_integer()} | {repair, force |
309             boolean()}
310
311             * dir - This mandatory option points  to  a  directory  where  to
312               place the file of a dets table.
313
314             * action  -  Specifies  the  behaviour  when  a non-empty file is
315               found: Keep its content or clear it out.
316
317               Default is keep.
318
319             * auto_save - Defines the dets auto-save frequency.
320
321               Default is default.
322
323             * repair - Defines the dets repair behaviour.
324
325               Default is false.
326
327           * snmpa_mib_storage_mnesia:  {action,  keep   |   clear},   {nodes,
328             [node()]}
329
330             * action  -  Specifies  the  behaviour  when a non-empty, already
331               existing, table: Keep its content or clear it out.
332
333               Default is keep.
334
335             * nodes - A list of node names (or an atom describing a  list  of
336               nodes)  defining where to open the table. Its up to the user to
337               ensure that mnesia is actually running on the specified nodes.
338
339               The following distinct values are recognised:
340
341               * [] - Translated into a list of the own node: [node()]
342
343               * all - erlang:nodes()
344
345               * visible - erlang:nodes(visible)
346
347               * connected - erlang:nodes(connected)
348
349               * db_nodes - mnesia:system_info(db_nodes)
350
351               Default is the result of the call: erlang:nodes().
352
353         mib_server() = [mib_server_opt()] <optional>:
354           mib_server_opt()  =  {mibentry_override,   mibentry_override()}   |
355           {trapentry_override,   trapentry_override()}   |  {verbosity,  ver‐
356           bosity()}    |    {cache,     mibs_cache()}     |     {data_module,
357           mib_server_data_module()}
358
359           Defines options specific for the SNMP agent mib server.
360
361           For defaults see the options in mib_server_opt().
362
363         mibentry_override() = bool() <optional>:
364           If  this value is false, then when loading a mib each mib- entry is
365           checked prior to installation of the mib. The purpose of the  check
366           is to prevent that the same symbolic mibentry name is used for dif‐
367           ferent oid's.
368
369           Default is false.
370
371         trapentry_override() = bool() <optional>:
372           If this value is false, then  when  loading  a  mib  each  trap  is
373           checked  prior to installation of the mib. The purpose of the check
374           is to prevent that the same symbolic trap name is used for  differ‐
375           ent trap's.
376
377           Default is false.
378
379         mib_server_data_module() = snmpa_mib_data_tttn | module() <optional>:
380           Defines  the  backend  data  module of the SNMP agent mib-server as
381           defined by the snmpa_mib_data behaviour.
382
383           At present only the default module  is  provided  with  the  agent,
384           snmpa_mib_data_tttn.
385
386           Default module is snmpa_mib_data_tttn.
387
388         mibs_cache() = bool() | mibs_cache_opts() <optional>:
389           Shall the agent utilize the mib server lookup cache or not.
390
391           Default is true (in which case the mibs_cache_opts() default values
392           apply).
393
394         mibs_cache_opts() = [mibs_cache_opt()] <optional>:
395           mibs_cache_opt()  =  {autogc,  mibs_cache_autogc()}   |   {gclimit,
396           mibs_cache_gclimit()} | {age, mibs_cache_age()}
397
398           Defines options specific for the SNMP agent mib server cache.
399
400           For defaults see the options in mibs_cache_opt().
401
402         mibs_cache_autogc() = bool() <optional>:
403           Defines  if  the mib server shall perform cache gc automatically or
404           leave it to the user (see gc_mibs_cache/0,1,2,3).
405
406           Default is true.
407
408         mibs_cache_age() = integer() > 0 <optional>:
409           Defines how old the entries in the cache will be allowed to  become
410           before they are GC'ed (assuming GC is performed). Each entry in the
411           cache is "touched" whenever it is accessed.
412
413           The age is defined in milliseconds.
414
415           Default is 10 timutes.
416
417         mibs_cache_gclimit() = infinity | integer() > 0 <optional>:
418           When performing a GC, this is the max number of cache entries  that
419           will be deleted from the cache.
420
421           The reason why its possible to set a limit, is that if the cache is
422           large, the GC can potentially take a long time,  during  which  the
423           agent  is  "busy". But on a heavily loaded system, we also risk not
424           removing enough elements in the cache, instead causing it  to  grow
425           over  time. This is the reason the default value is infinity, which
426           will ensure that all candidates are removed as soon as possible.
427
428           Default is infinity.
429
430         error_report_mod() = atom() <optional>:
431           Defines an error report module, implementing the snmpa_error_report
432           behaviour.   Two   modules   are   provided   with   the   toolkit:
433           snmpa_error_logger and snmpa_error_io.
434
435           Default is snmpa_error_logger.
436
437         symbolic_store() = [symbolic_store_opt()]:
438           symbolic_store_opt() = {verbosity, verbosity()}
439
440           Defines options specific for the SNMP agent symbolic store.
441
442           For defaults see the options in symbolic_store_opt().
443
444         target_cache() = [target_cache_opt()]:
445           target_cache_opt() = {verbosity, verbosity()}
446
447           Defines options specific for the SNMP agent target cache.
448
449           For defaults see the options in target_cache_opt().
450
451         agent_config() = [agent_config_opt()] <mandatory>:
452           agent_config_opt()  =  {dir,  agent_config_dir()}  |   {force_load,
453           force_load()} | {verbosity, verbosity()}
454
455           Defines specific config related options for the SNMP agent.
456
457           For defaults see the options in agent_config_opt().
458
459         agent_config_dir = dir() <mandatory>:
460           Defines where the SNMP agent configuration files are stored.
461
462         force_load() = bool() <optional>:
463           If  true  the  configuration files are re-read during start-up, and
464           the contents of the configuration database ignored. Thus, if  true,
465           changes  to  the configuration database are lost upon reboot of the
466           agent.
467
468           Default is false.
469
470       Manager specific config options and types:
471
472         server() = [server_opt()] <optional>:
473           server_opt()  =  {timeout,  server_timeout()}  |  {verbosity,  ver‐
474           bosity()} | {cbproxy, server_cbproxy()} | {netif_sup, server_nis()}
475
476           Specifies the options for the manager server process.
477
478           Default is silence.
479
480         server_timeout() = integer() <optional>:
481           Asynchronous request cleanup time. For every requests, some info is
482           stored internally, in order to be able to deliver the  reply  (when
483           it  arrives)  to the proper destination. If the reply arrives, this
484           info will be deleted. But if there is no reply (in time), the  info
485           has  to be deleted after the best before time has been passed. This
486           cleanup will be performed at  regular  intervals,  defined  by  the
487           server_timeout()  time.  The  information  will have an best before
488           time, defined by the Expire time given  when  calling  the  request
489           function (see async_get, async_get_next and async_set).
490
491           Time in milli-seconds.
492
493           Default is 30000.
494
495         server_cbproxy() = temporary (default) | permanent <optional>:
496           This option specifies how the server will handle callback calls.
497
498           temporary (default):
499             A temporary process will be created for each callback call.
500
501           permanent:
502             With this the server will create a permanent (named) process that
503             in effect serializes all callback calls.
504
505           Default is temporary.
506
507         server_nis() = none (default) | {PingTO, PongTO} <optional>:
508           This option specifies if the server should actively  supervise  the
509           net-if  process.  Note  that this will only work if the used net-if
510           process actually supports the protocol. See snmpm_network_interface
511           behaviour for more info.
512
513           none (default):
514             No active supervision of the net-if process.
515
516           {PingTO :: pos_integer(), PongTO :: pos_integer()}:
517             The  PingTO  time  specifies  the  between  a successful ping (or
518             start) and the time when a ping message is to be sent to the net-
519             if process (basically the time between ping).
520
521             The PongTO time specifies how long time the net-if process has to
522             respond to a ping message, with a pong message. Its starts count‐
523             ing when the ping message has been sent.
524
525             Both times are in milli seconds.
526
527           Default is none.
528
529         manager_config() = [manager_config_opt()] <mandatory>:
530           manager_config_opt()  = {dir, manager_config_dir()} | {db_dir, man‐
531           ager_db_dir()} | {db_init_error, db_init_error()} |  {repair,  man‐
532           ager_repair()}  |  {auto_save,  manager_auto_save()}  | {verbosity,
533           verbosity()}
534
535           Defines specific config related options for the SNMP manager.
536
537           For defaults see the options in manager_config_opt().
538
539         manager_config_dir = dir() <mandatory>:
540           Defines where the SNMP manager configuration files are stored.
541
542         manager_db_dir = dir() <mandatory>:
543           Defines where the SNMP manager store persistent data.
544
545         manager_repair() = false | true | force <optional>:
546           Defines the repair option for the persistent database (if  and  how
547           the table is repaired when opened).
548
549           Default is true.
550
551         manager_auto_save() = integer() | infinity <optional>:
552           The  auto  save interval. The table is flushed to disk whenever not
553           accessed for this amount of time.
554
555           Default is 5000.
556
557         manager_irb() = auto | user | {user, integer()} <optional>:
558           This option defines how the manager  will  handle  the  sending  of
559           response (acknowledgment) to received inform-requests.
560
561           * auto  -  The manager will autonomously send response (acknowledg‐
562             ment> to inform-request messages.
563
564           * {user, integer()} - The manager will send  response  (acknowledg‐
565             ment)  to inform-request messages when the handle_inform function
566             completes. The integer is the time, in  milli-seconds,  that  the
567             manager will consider the stored inform-request info valid.
568
569           * user  -  Same as {user, integer()}, except that the default time,
570             15 seconds (15000), is used.
571
572           See snmpm_network_interface, handle_inform and  definition  of  the
573           manager net if for more info.
574
575           Default is auto.
576
577         manager_mibs() = [string()] <optional>:
578           Specifies  a  list  of MIBs (including path) and defines which MIBs
579           are initially loaded into the SNMP manager.
580
581           Default is [].
582
583         manager_net_if() = [manager_net_if_opt()] <optional>:
584           manager_net_if_opt() = {module,  manager_net_if_module()}  |  {ver‐
585           bosity, verbosity()} | {options, manager_net_if_options()}
586
587           Defines  options  specific  for  the SNMP manager network interface
588           entity.
589
590           For defaults see the options in manager_net_if_opt().
591
592         manager_net_if_options() = [manager_net_if_option()] <optional>:
593           manager_net_if_option() = {bind_to, bind_to()} | {sndbuf, sndbuf()}
594           |  {recbuf,  recbuf()}  |  {no_reuse,  no_reuse()}  | {filter, man‐
595           ager_net_if_filter_options()}          |          {extra_sock_opts,
596           extra_socket_options()}
597
598           These  options  are  actually specific to the used module. The ones
599           shown here are applicable to the default manager_net_if_module().
600
601           For defaults see the options in manager_net_if_option().
602
603         manager_net_if_module() = atom() <optional>:
604           The module which handles the network interface part  for  the  SNMP
605           manager. It must implement the snmpm_network_interface behaviour.
606
607           Default is snmpm_net_if.
608
609         manager_net_if_filter_options()   =  [manager_net_if_filter_option()]
610         <optional>:
611           manager_net_if_filter_option()   =   {module,   manager_net_if_fil‐
612           ter_module()}
613
614           These  options  are  actually specific to the used module. The ones
615           shown here are applicable to the default manager_net_if_filter_mod‐
616           ule().
617
618           For defaults see the options in manager_net_if_filter_option().
619
620         manager_net_if_filter_module() = atom() <optional>:
621           Module which handles the network interface filter part for the SNMP
622           manager. Must implement the  snmpm_network_interface_filter  behav‐
623           iour.
624
625           Default is snmpm_net_if_filter.
626
627         def_user_module() = atom() <optional>:
628           The module implementing the default user. See the snmpm_user behav‐
629           iour.
630
631           Default is snmpm_user_default.
632
633         def_user_data() = term() <optional>:
634           Data for the default user. Passed to the user module  when  calling
635           the callback functions.
636
637           Default is undefined.
638
639       Common config types:
640
641         restart_type() = permanent | transient | temporary:
642           See supervisor documentation for more info.
643
644           Default is permanent for the agent and transient for the manager.
645
646         db_init_error() = terminate | create | create_db_and_dir:
647           Defines  what  to  do  if the agent or manager is unable to open an
648           existing database file. terminate means that the agent/manager will
649           terminate  and  create means that the agent/manager will remove the
650           faulty file(s) and create new  ones,  and  create_db_and_dir  means
651           that the agent/manager will create the database file along with any
652           missing parent directories for the database file.
653
654           Default is terminate.
655
656         priority() = atom() <optional>:
657           Defines the Erlang priority for all SNMP processes.
658
659           Default is normal.
660
661         versions() = [version()] <optional>:
662           version() = v1 | v2 | v3
663
664           Which SNMP versions shall be accepted/used.
665
666           Default is [v1,v2,v3].
667
668         verbosity() = silence | info | log | debug | trace <optional>:
669           Verbosity for a SNMP process. This specifies now much debug info is
670           printed.
671
672           Default is silence.
673
674         bind_to() = bool() <optional>:
675           If  true,  net_if binds to the IP address. If false, net_if listens
676           on any IP address on the host where it is running.
677
678           Default is false.
679
680         no_reuse() = bool() <optional>:
681           If true, net_if does not specify  that  the  IP  and  port  address
682           should be reusable. If false, the address is set to reusable.
683
684           Default is false.
685
686         recbuf() = integer() <optional>:
687           Receive buffer size.
688
689           Default value is defined by gen_udp.
690
691         sndbuf() = integer() <optional>:
692           Send buffer size.
693
694           Default value is defined by gen_udp.
695
696         extra_socket_options() = list() <optional>:
697           A list of arbitrary socket options.
698
699           This  list is not inspected by snmp (other then checking that its a
700           list). Its the users responsibility to ensure that these are  valid
701           options and does not conflict with the "normal" options.
702
703           Default is [].
704
705         note_store() = [note_store_opt()] <optional>:
706           note_store_opt()  =  {timeout,  note_store_timeout()} | {verbosity,
707           verbosity()}
708
709           Specifies the start-up verbosity for the SNMP note store.
710
711           For defaults see the options in note_store_opt().
712
713         note_store_timeout() = integer() <optional>:
714           Note cleanup time. When storing a note in the note store, each note
715           is  given lifetime. Every timeout the note_store process performs a
716           GC to remove the expired note's. Time in milli-seconds.
717
718           Default is 30000.
719
720         audit_trail_log() = [audit_trail_log_opt()] <optional>:
721           audit_trail_log_opt() = {type, atl_type()}  |  {dir,  atl_dir()}  |
722           {size, atl_size()} | {repair, atl_repair()} | {seqno, atl_seqno()}
723
724           If  present,  this option specifies the options for the audit trail
725           logging. The disk_log module is used to maintain  a  wrap  log.  If
726           present, the dir and size options are mandatory.
727
728           If not present, audit trail logging is not used.
729
730         atl_type() = read | write | read_write <optional>:
731           Specifies  what  type  of  an  audit  trail log should be used. The
732           effect of the type is actually different for the the agent and  the
733           manager.
734
735           For the agent:
736
737           * If write is specified, only set requests are logged.
738
739           * If read is specified, only get requests are logged.
740
741           * If read_write, all requests are logged.
742
743           For the manager:
744
745           * If write is specified, only sent messages are logged.
746
747           * If read is specified, only received messages are logged.
748
749           * If read_write, both outgoing and incoming messages are logged.
750
751           Default is read_write.
752
753         atl_dir = dir() <mandatory>:
754           Specifies where the audit trail log should be stored.
755
756           If  audit_trail_log  specifies that logging should take place, this
757           parameter must be defined.
758
759         atl_size() = {integer(), integer()} <mandatory>:
760           Specifies the size of the audit trail log. This parameter  is  sent
761           to disk_log.
762
763           If  audit_trail_log  specifies that logging should take place, this
764           parameter must be defined.
765
766         atl_repair() = true | false | truncate | snmp_repair <optional>:
767           Specifies if and how the audit trail log  shall  be  repaired  when
768           opened.  Unless this parameter has the value snmp_repair it is sent
769           to disk_log. If, on the other hand, the value is snmp_repair,  snmp
770           attempts to handle certain faults on its own. And even if it cannot
771           repair the file, it does not  truncate  it  directly,  but  instead
772           moves it aside for later off-line analysis.
773
774           Default is true.
775
776         atl_seqno() = true | false <optional>:
777           Specifies  if  the  audit trail log entries will be (sequence) num‐
778           bered or not. The range of the sequence numbers  are  according  to
779           RFC 5424, i.e. 1 through 2147483647.
780
781           Default is false.
782

SEE ALSO

784       application(3), disk_log(3)
785
786
787
788Ericsson AB                        snmp 5.8                            SNMP(7)
Impressum