1
NOTIFICATION-LOG-MIB DEFINITIONS ::= BEGIN
4
MODULE-IDENTITY, OBJECT-TYPE,
6
TimeTicks, Counter32, Counter64,
7
IpAddress, Opaque, mib-2 FROM SNMPv2-SMI
8
TimeStamp, DateAndTime,
9
StorageType, RowStatus,
10
TAddress, TDomain FROM SNMPv2-TC
11
SnmpAdminString, SnmpEngineID FROM SNMP-FRAMEWORK-MIB
12
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF;
14
notificationLogMIB MODULE-IDENTITY
15
LAST-UPDATED "200011270000Z" -- 27 November 2000
16
ORGANIZATION "IETF Distributed Management Working Group"
17
CONTACT-INFO "Ramanathan Kavasseri
19
170 West Tasman Drive,
20
San Jose CA 95134-1706.
21
Phone: +1 408 527 2446
22
Email: ramk@cisco.com"
24
"The MIB module for logging SNMP Notifications, that is, Traps
29
REVISION "200011270000Z" -- 27 November 2000
30
DESCRIPTION "This is the initial version of this MIB.
31
Published as RFC 3014"
35
notificationLogMIBObjects OBJECT IDENTIFIER ::= { notificationLogMIB 1 }
37
nlmConfig OBJECT IDENTIFIER ::= { notificationLogMIBObjects 1 }
38
nlmStats OBJECT IDENTIFIER ::= { notificationLogMIBObjects 2 }
39
nlmLog OBJECT IDENTIFIER ::= { notificationLogMIBObjects 3 }
44
nlmConfigGlobalEntryLimit OBJECT-TYPE
49
"The maximum number of notification entries that may be held
50
in nlmLogTable for all nlmLogNames added together. A particular
51
setting does not guarantee that much data can be held.
53
If an application changes the limit while there are
54
Notifications in the log, the oldest Notifications MUST be
55
discarded to bring the log down to the new limit - thus the
56
value of nlmConfigGlobalEntryLimit MUST take precedence over
57
the values of nlmConfigGlobalAgeOut and nlmConfigLogEntryLimit,
58
even if the Notification being discarded has been present for
59
fewer minutes than the value of nlmConfigGlobalAgeOut, or if
60
the named log has fewer entries than that specified in
61
nlmConfigLogEntryLimit.
63
A value of 0 means no limit.
65
Please be aware that contention between multiple managers
66
trying to set this object to different values MAY affect the
67
reliability and completeness of data seen by each manager."
71
nlmConfigGlobalAgeOut OBJECT-TYPE
79
"The number of minutes a Notification SHOULD be kept in a log
80
before it is automatically removed.
82
If an application changes the value of nlmConfigGlobalAgeOut,
83
Notifications older than the new time MAY be discarded to meet the
86
A value of 0 means no age out.
88
Please be aware that contention between multiple managers
89
trying to set this object to different values MAY affect the
90
reliability and completeness of data seen by each manager."
91
DEFVAL { 1440 } -- 24 hours
98
nlmConfigLogTable OBJECT-TYPE
99
SYNTAX SEQUENCE OF NlmConfigLogEntry
100
MAX-ACCESS not-accessible
103
"A table of logging control entries."
106
nlmConfigLogEntry OBJECT-TYPE
107
SYNTAX NlmConfigLogEntry
108
MAX-ACCESS not-accessible
111
"A logging control entry. Depending on the entry's storage type
112
entries may be supplied by the system or created and deleted by
113
applications using nlmConfigLogEntryStatus."
115
::= { nlmConfigLogTable 1 }
117
NlmConfigLogEntry ::= SEQUENCE {
118
nlmLogName SnmpAdminString,
119
nlmConfigLogFilterName SnmpAdminString,
120
nlmConfigLogEntryLimit Unsigned32,
121
nlmConfigLogAdminStatus INTEGER,
124
nlmConfigLogOperStatus INTEGER,
125
nlmConfigLogStorageType StorageType,
126
nlmConfigLogEntryStatus RowStatus
129
nlmLogName OBJECT-TYPE
130
SYNTAX SnmpAdminString (SIZE(0..32))
131
MAX-ACCESS not-accessible
134
"The name of the log.
136
An implementation may allow multiple named logs, up to some
137
implementation-specific limit (which may be none). A
138
zero-length log name is reserved for creation and deletion by
139
the managed system, and MUST be used as the default log name by
140
systems that do not support named logs."
141
::= { nlmConfigLogEntry 1 }
143
nlmConfigLogFilterName OBJECT-TYPE
144
SYNTAX SnmpAdminString (SIZE(0..32))
145
MAX-ACCESS read-create
148
"A value of snmpNotifyFilterProfileName as used as an index
149
into the snmpNotifyFilterTable in the SNMP Notification MIB,
150
specifying the locally or remotely originated Notifications
151
to be filtered out and not logged in this log.
153
A zero-length value or a name that does not identify an
154
existing entry in snmpNotifyFilterTable indicate no
155
Notifications are to be logged in this log."
157
::= { nlmConfigLogEntry 2 }
159
nlmConfigLogEntryLimit OBJECT-TYPE
161
MAX-ACCESS read-create
164
"The maximum number of notification entries that can be held in
165
nlmLogTable for this named log. A particular setting does not
166
guarantee that that much data can be held.
168
If an application changes the limit while there are
169
Notifications in the log, the oldest Notifications are discarded
170
to bring the log down to the new limit.
174
A value of 0 indicates no limit.
176
Please be aware that contention between multiple managers
177
trying to set this object to different values MAY affect the
178
reliability and completeness of data seen by each manager."
180
::= { nlmConfigLogEntry 3 }
182
nlmConfigLogAdminStatus OBJECT-TYPE
183
SYNTAX INTEGER { enabled(1), disabled(2) }
184
MAX-ACCESS read-create
187
"Control to enable or disable the log without otherwise
188
disturbing the log's entry.
190
Please be aware that contention between multiple managers
191
trying to set this object to different values MAY affect the
192
reliability and completeness of data seen by each manager."
194
::= { nlmConfigLogEntry 4 }
196
nlmConfigLogOperStatus OBJECT-TYPE
197
SYNTAX INTEGER { disabled(1), operational(2), noFilter(3) }
201
"The operational status of this log:
203
disabled administratively disabled
205
operational administratively enabled and working
207
noFilter administratively enabled but either
208
nlmConfigLogFilterName is zero length
209
or does not name an existing entry in
210
snmpNotifyFilterTable"
211
::= { nlmConfigLogEntry 5 }
213
nlmConfigLogStorageType OBJECT-TYPE
215
MAX-ACCESS read-create
218
"The storage type of this conceptual row."
219
::= { nlmConfigLogEntry 6 }
221
nlmConfigLogEntryStatus OBJECT-TYPE
225
MAX-ACCESS read-create
228
"Control for creating and deleting entries. Entries may be
229
modified while active.
231
For non-null-named logs, the managed system records the security
232
credentials from the request that sets nlmConfigLogStatus
233
to 'active' and uses that identity to apply access control to
234
the objects in the Notification to decide if that Notification
236
::= { nlmConfigLogEntry 7 }
241
nlmStatsGlobalNotificationsLogged OBJECT-TYPE
243
UNITS "notifications"
247
"The number of Notifications put into the nlmLogTable. This
248
counts a Notification once for each log entry, so a Notification
249
put into multiple logs is counted multiple times."
252
nlmStatsGlobalNotificationsBumped OBJECT-TYPE
254
UNITS "notifications"
258
"The number of log entries discarded to make room for a new entry
259
due to lack of resources or the value of nlmConfigGlobalEntryLimit
260
or nlmConfigLogEntryLimit. This does not include entries discarded
261
due to the value of nlmConfigGlobalAgeOut."
267
nlmStatsLogTable OBJECT-TYPE
268
SYNTAX SEQUENCE OF NlmStatsLogEntry
269
MAX-ACCESS not-accessible
274
"A table of Notification log statistics entries."
277
nlmStatsLogEntry OBJECT-TYPE
278
SYNTAX NlmStatsLogEntry
279
MAX-ACCESS not-accessible
282
"A Notification log statistics entry."
283
AUGMENTS { nlmConfigLogEntry }
284
::= { nlmStatsLogTable 1 }
286
NlmStatsLogEntry ::= SEQUENCE {
287
nlmStatsLogNotificationsLogged Counter32,
288
nlmStatsLogNotificationsBumped Counter32
291
nlmStatsLogNotificationsLogged OBJECT-TYPE
293
UNITS "notifications"
297
"The number of Notifications put in this named log."
298
::= { nlmStatsLogEntry 1 }
300
nlmStatsLogNotificationsBumped OBJECT-TYPE
302
UNITS "notifications"
306
"The number of log entries discarded from this named log to make
307
room for a new entry due to lack of resources or the value of
308
nlmConfigGlobalEntryLimit or nlmConfigLogEntryLimit. This does not
309
include entries discarded due to the value of
310
nlmConfigGlobalAgeOut."
311
::= { nlmStatsLogEntry 2 }
320
nlmLogTable OBJECT-TYPE
321
SYNTAX SEQUENCE OF NlmLogEntry
322
MAX-ACCESS not-accessible
325
"A table of Notification log entries.
327
It is an implementation-specific matter whether entries in this
328
table are preserved across initializations of the management
329
system. In general one would expect that they are not.
331
Note that keeping entries across initializations of the
332
management system leads to some confusion with counters and
333
TimeStamps, since both of those are based on sysUpTime, which
334
resets on management initialization. In this situation,
335
counters apply only after the reset and nlmLogTime for entries
336
made before the reset MUST be set to 0."
339
nlmLogEntry OBJECT-TYPE
341
MAX-ACCESS not-accessible
344
"A Notification log entry.
346
Entries appear in this table when Notifications occur and pass
347
filtering by nlmConfigLogFilterName and access control. They are
348
removed to make way for new entries due to lack of resources or
349
the values of nlmConfigGlobalEntryLimit, nlmConfigGlobalAgeOut, or
350
nlmConfigLogEntryLimit.
352
If adding an entry would exceed nlmConfigGlobalEntryLimit or system
353
resources in general, the oldest entry in any log SHOULD be removed
354
to make room for the new one.
356
If adding an entry would exceed nlmConfigLogEntryLimit the oldest
357
entry in that log SHOULD be removed to make room for the new one.
359
Before the managed system puts a locally-generated Notification
360
into a non-null-named log it assures that the creator of the log
361
has access to the information in the Notification. If not it
362
does not log that Notification in that log."
363
INDEX { nlmLogName, nlmLogIndex }
364
::= { nlmLogTable 1 }
368
NlmLogEntry ::= SEQUENCE {
369
nlmLogIndex Unsigned32,
370
nlmLogTime TimeStamp,
371
nlmLogDateAndTime DateAndTime,
372
nlmLogEngineID SnmpEngineID,
373
nlmLogEngineTAddress TAddress,
374
nlmLogEngineTDomain TDomain,
375
nlmLogContextEngineID SnmpEngineID,
376
nlmLogContextName SnmpAdminString,
377
nlmLogNotificationID OBJECT IDENTIFIER
380
nlmLogIndex OBJECT-TYPE
381
SYNTAX Unsigned32 (1..4294967295)
382
MAX-ACCESS not-accessible
385
"A monotonically increasing integer for the sole purpose of
386
indexing entries within the named log. When it reaches the
387
maximum value, an extremely unlikely event, the agent wraps the
389
::= { nlmLogEntry 1 }
391
nlmLogTime OBJECT-TYPE
396
"The value of sysUpTime when the entry was placed in the log. If
397
the entry occurred before the most recent management system
398
initialization this object value MUST be set to zero."
399
::= { nlmLogEntry 2 }
401
nlmLogDateAndTime OBJECT-TYPE
406
"The local date and time when the entry was logged, instantiated
407
only by systems that have date and time capability."
408
::= { nlmLogEntry 3 }
410
nlmLogEngineID OBJECT-TYPE
415
"The identification of the SNMP engine at which the Notification
420
If the log can contain Notifications from only one engine
421
or the Trap is in SNMPv1 format, this object is a zero-length
423
::= { nlmLogEntry 4 }
425
nlmLogEngineTAddress OBJECT-TYPE
430
"The transport service address of the SNMP engine from which the
431
Notification was received, formatted according to the corresponding
432
value of nlmLogEngineTDomain. This is used to identify the source
433
of an SNMPv1 trap, since an nlmLogEngineId cannot be extracted
434
from the SNMPv1 trap pdu.
436
This object MUST always be instantiated, even if the log
437
can contain Notifications from only one engine.
439
Please be aware that the nlmLogEngineTAddress may not uniquely
440
identify the SNMP engine from which the Notification was received.
441
For example, if an SNMP engine uses DHCP or NAT to obtain
442
ip addresses, the address it uses may be shared with other
443
network devices, and hence will not uniquely identify the
445
::= { nlmLogEntry 5 }
447
nlmLogEngineTDomain OBJECT-TYPE
452
"Indicates the kind of transport service by which a Notification
453
was received from an SNMP engine. nlmLogEngineTAddress contains
454
the transport service address of the SNMP engine from which
455
this Notification was received.
457
Possible values for this object are presently found in the
458
Transport Mappings for SNMPv2 document (RFC 1906 [8])."
459
::= { nlmLogEntry 6 }
461
nlmLogContextEngineID OBJECT-TYPE
468
"If the Notification was received in a protocol which has a
469
contextEngineID element like SNMPv3, this object has that value.
470
Otherwise its value is a zero-length string."
471
::= { nlmLogEntry 7 }
473
nlmLogContextName OBJECT-TYPE
474
SYNTAX SnmpAdminString
478
"The name of the SNMP MIB context from which the Notification came.
479
For SNMPv1 Traps this is the community string from the Trap."
480
::= { nlmLogEntry 8 }
482
nlmLogNotificationID OBJECT-TYPE
483
SYNTAX OBJECT IDENTIFIER
487
"The NOTIFICATION-TYPE object identifier of the Notification that
489
::= { nlmLogEntry 9 }
494
nlmLogVariableTable OBJECT-TYPE
495
SYNTAX SEQUENCE OF NlmLogVariableEntry
496
MAX-ACCESS not-accessible
499
"A table of variables to go with Notification log entries."
502
nlmLogVariableEntry OBJECT-TYPE
503
SYNTAX NlmLogVariableEntry
504
MAX-ACCESS not-accessible
507
"A Notification log entry variable.
509
Entries appear in this table when there are variables in
510
the varbind list of a Notification in nlmLogTable."
511
INDEX { nlmLogName, nlmLogIndex, nlmLogVariableIndex }
512
::= { nlmLogVariableTable 1 }
514
NlmLogVariableEntry ::= SEQUENCE {
517
nlmLogVariableIndex Unsigned32,
518
nlmLogVariableID OBJECT IDENTIFIER,
519
nlmLogVariableValueType INTEGER,
520
nlmLogVariableCounter32Val Counter32,
521
nlmLogVariableUnsigned32Val Unsigned32,
522
nlmLogVariableTimeTicksVal TimeTicks,
523
nlmLogVariableInteger32Val Integer32,
524
nlmLogVariableOctetStringVal OCTET STRING,
525
nlmLogVariableIpAddressVal IpAddress,
526
nlmLogVariableOidVal OBJECT IDENTIFIER,
527
nlmLogVariableCounter64Val Counter64,
528
nlmLogVariableOpaqueVal Opaque
531
nlmLogVariableIndex OBJECT-TYPE
532
SYNTAX Unsigned32 (1..4294967295)
533
MAX-ACCESS not-accessible
536
"A monotonically increasing integer, starting at 1 for a given
537
nlmLogIndex, for indexing variables within the logged
539
::= { nlmLogVariableEntry 1 }
541
nlmLogVariableID OBJECT-TYPE
542
SYNTAX OBJECT IDENTIFIER
546
"The variable's object identifier."
547
::= { nlmLogVariableEntry 2 }
549
nlmLogVariableValueType OBJECT-TYPE
550
SYNTAX INTEGER { counter32(1), unsigned32(2), timeTicks(3),
551
integer32(4), ipAddress(5), octetString(6),
552
objectId(7), counter64(8), opaque(9) }
556
"The type of the value. One and only one of the value
557
objects that follow must be instantiated, based on this type."
558
::= { nlmLogVariableEntry 3 }
560
nlmLogVariableCounter32Val OBJECT-TYPE
567
"The value when nlmLogVariableType is 'counter32'."
568
::= { nlmLogVariableEntry 4 }
570
nlmLogVariableUnsigned32Val OBJECT-TYPE
575
"The value when nlmLogVariableType is 'unsigned32'."
576
::= { nlmLogVariableEntry 5 }
578
nlmLogVariableTimeTicksVal OBJECT-TYPE
583
"The value when nlmLogVariableType is 'timeTicks'."
584
::= { nlmLogVariableEntry 6 }
586
nlmLogVariableInteger32Val OBJECT-TYPE
591
"The value when nlmLogVariableType is 'integer32'."
592
::= { nlmLogVariableEntry 7 }
594
nlmLogVariableOctetStringVal OBJECT-TYPE
599
"The value when nlmLogVariableType is 'octetString'."
600
::= { nlmLogVariableEntry 8 }
602
nlmLogVariableIpAddressVal OBJECT-TYPE
607
"The value when nlmLogVariableType is 'ipAddress'.
608
Although this seems to be unfriendly for IPv6, we
609
have to recognize that there are a number of older
610
MIBs that do contain an IPv4 format address, known
613
IPv6 addresses are represented using TAddress or
614
InetAddress, and so the underlying datatype is
617
OCTET STRING, and their value would be stored in
618
the nlmLogVariableOctetStringVal column."
619
::= { nlmLogVariableEntry 9 }
621
nlmLogVariableOidVal OBJECT-TYPE
622
SYNTAX OBJECT IDENTIFIER
626
"The value when nlmLogVariableType is 'objectId'."
627
::= { nlmLogVariableEntry 10 }
629
nlmLogVariableCounter64Val OBJECT-TYPE
634
"The value when nlmLogVariableType is 'counter64'."
635
::= { nlmLogVariableEntry 11 }
637
nlmLogVariableOpaqueVal OBJECT-TYPE
642
"The value when nlmLogVariableType is 'opaque'."
643
::= { nlmLogVariableEntry 12 }
649
notificationLogMIBConformance OBJECT IDENTIFIER ::=
650
{ notificationLogMIB 3 }
651
notificationLogMIBCompliances OBJECT IDENTIFIER ::=
652
{ notificationLogMIBConformance 1 }
653
notificationLogMIBGroups OBJECT IDENTIFIER ::=
654
{ notificationLogMIBConformance 2 }
657
notificationLogMIBCompliance MODULE-COMPLIANCE
660
"The compliance statement for entities which implement
661
the Notification Log MIB."
662
MODULE -- this module
666
notificationLogConfigGroup,
667
notificationLogStatsGroup,
668
notificationLogLogGroup
671
OBJECT nlmConfigGlobalEntryLimit
672
SYNTAX Unsigned32 (0..4294967295)
675
"Implementations may choose a limit and not allow it to be
676
changed or may enforce an upper or lower bound on the
679
OBJECT nlmConfigLogEntryLimit
680
SYNTAX Unsigned32 (0..4294967295)
683
"Implementations may choose a limit and not allow it to be
684
changed or may enforce an upper or lower bound on the
687
OBJECT nlmConfigLogEntryStatus
690
"Implementations may disallow the creation of named logs."
692
GROUP notificationLogDateGroup
694
"This group is mandatory on systems that keep wall clock
695
date and time and should not be implemented on systems that
696
do not have a wall clock date."
698
::= { notificationLogMIBCompliances 1 }
701
notificationLogConfigGroup OBJECT-GROUP
703
nlmConfigGlobalEntryLimit,
704
nlmConfigGlobalAgeOut,
705
nlmConfigLogFilterName,
706
nlmConfigLogEntryLimit,
707
nlmConfigLogAdminStatus,
708
nlmConfigLogOperStatus,
709
nlmConfigLogStorageType,
710
nlmConfigLogEntryStatus
716
"Notification log configuration management."
717
::= { notificationLogMIBGroups 1 }
719
notificationLogStatsGroup OBJECT-GROUP
721
nlmStatsGlobalNotificationsLogged,
722
nlmStatsGlobalNotificationsBumped,
723
nlmStatsLogNotificationsLogged,
724
nlmStatsLogNotificationsBumped
728
"Notification log statistics."
729
::= { notificationLogMIBGroups 2 }
731
notificationLogLogGroup OBJECT-GROUP
735
nlmLogEngineTAddress,
737
nlmLogContextEngineID,
739
nlmLogNotificationID,
741
nlmLogVariableValueType,
742
nlmLogVariableCounter32Val,
743
nlmLogVariableUnsigned32Val,
744
nlmLogVariableTimeTicksVal,
745
nlmLogVariableInteger32Val,
746
nlmLogVariableOctetStringVal,
747
nlmLogVariableIpAddressVal,
748
nlmLogVariableOidVal,
749
nlmLogVariableCounter64Val,
750
nlmLogVariableOpaqueVal
754
"Notification log data."
755
::= { notificationLogMIBGroups 3 }
757
notificationLogDateGroup OBJECT-GROUP
765
"Conditionally mandatory notification log data.
766
This group is mandatory on systems that keep wall
767
clock date and time and should not be implemented
768
on systems that do not have a wall clock date."
769
::= { notificationLogMIBGroups 4 }