1
UCD-SNMP-MIB DEFINITIONS ::= BEGIN
5
-- The design of this mib may seem unusual in parts, as it was
6
-- designed for ease of numerical management routines.
8
-- In that light, most sub-sections of this mib have four common
9
-- numerical oid consistencies:
11
-- 2021.ID.1 : an integer index value. In scalers, this is always
12
-- of value 1. In tables it is a row index.
13
-- 2021.ID.2 : a name of the script, process, etc. that this row represents.
14
-- 2021.ID.100 : An error flag indicating if an error is present on
15
-- that row (a threshold value was crossed, etc).
16
-- 2021.ID.101 : An error string describing why the error flag is non-0.
18
-- These conventions enable managers to easy examine portions of the
19
-- mib by setting the ID to the sub-section they are interested in
20
-- monitoring, and then scanning the .100 value to check for an
21
-- error(s), and get a more specific error message from .101 for the
22
-- named check found in .2.
24
-- Row numbers between 2 and 100 are sub-section specific.
26
-- Mib sections utilizing the above conventions:
27
-- Tables: procTable, execTable, diskTable, loadTable
28
-- Scalers: memory, snmperrs
32
OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY,
33
Integer32, Opaque, enterprises, Counter32
36
TEXTUAL-CONVENTION, DisplayString, TruthValue
39
ucdavis MODULE-IDENTITY
40
LAST-UPDATED "200101170000Z"
41
ORGANIZATION "University of California, Davis"
43
"The ucd-snmp-coders mailing list is the best place
44
to write for public questions about the ucd-snmp
45
project: ucd-snmp-coders@ucd-snmp.ucdavis.edu
47
Primary Author: Wes Hardaker
52
phone: +1 530 754-7571
53
email: wjhardaker@ucdavis.edu"
55
"This file defines the private UCD SNMP MIB extensions."
56
REVISION "200101170000Z"
58
"Added raw CPU and IO counters."
59
REVISION "9912090000Z"
61
"SMIv2 version converted from older MIB definitions."
62
::= { enterprises 2021 }
64
-- Current UCD core mib table entries:
65
-- prTable OBJECT IDENTIFIER ::= { ucdavis 2 }
66
-- memory OBJECT IDENTIFIER ::= { ucdavis 4 }
67
-- extTable OBJECT IDENTIFIER ::= { ucdavis 8 }
68
-- diskTable OBJECT IDENTIFIER ::= { ucdavis 9 }
69
-- loadTable OBJECT IDENTIFIER ::= { ucdavis 10 }
70
-- systemStats OBJECT IDENTIFIER ::= { ucdavis 11 }
71
-- ucdDemoMIB OBJECT IDENTIFIER ::= { ucdavis 14 } - UCD-DEMO-MIB
72
-- fileTable OBJECT IDENTIFIER ::= { ucdavis 15 }
73
-- version OBJECT IDENTIFIER ::= { ucdavis 100 }
74
-- snmperrs OBJECT IDENTIFIER ::= { ucdavis 101 }
75
-- mibRegistryTable OBJECT IDENTIFIER ::= { ucdavis 102 }
77
-- Older mib table entries that were changed to new locations above:
78
-- processes OBJECT IDENTIFIER ::= { ucdavis 1 }
79
-- exec OBJECT IDENTIFIER ::= { ucdavis 3 }
80
-- disk OBJECT IDENTIFIER ::= { ucdavis 6 }
81
-- load OBJECT IDENTIFIER ::= { ucdavis 7 }
83
-- Never implemented and removed from the mib:
84
-- lockd OBJECT IDENTIFIER ::= { ucdavis 5 }
86
-- Branches for registering other UCD MIB modules:
87
ucdInternal OBJECT IDENTIFIER ::= { ucdavis 12 }
88
ucdExperimental OBJECT IDENTIFIER ::= { ucdavis 13 }
90
-- OID values assigned in the ucdExperimental branch:
91
-- ucdIpFwAccMIB OBJECT IDENTIFIER ::= { ucdExperimental 1 } - UCD-IPFWACC-MIB
92
-- ucdIpFilter OBJECT IDENTIFIER ::= { ucdExperimental 2 } - UCD-IPFILTER-MIB
93
-- wavelan OBJECT IDENTIFIER ::= { ucdExperimental 3 } - WL-MIB
94
-- ucdDlmodMIB OBJECT IDENTIFIER ::= { ucdExperimental 14 } - UCD-DLMOD-MIB
95
-- ucdDiskIOMIB OBJECT IDENTIFIER ::= { ucdExperimental 15 } - UCD-DISKIO-MIB
98
-- These are the returned values of the agent type.
99
-- returned to: .iso.org.dod.internet.mgmt.mib-2.system.sysObjectID.0
101
ucdSnmpAgent OBJECT IDENTIFIER ::= { ucdavis 250 }
102
hpux9 OBJECT IDENTIFIER ::= { ucdSnmpAgent 1 }
103
hpux10 OBJECT IDENTIFIER ::= { ucdSnmpAgent 6 }
104
sunos4 OBJECT IDENTIFIER ::= { ucdSnmpAgent 2 }
105
solaris OBJECT IDENTIFIER ::= { ucdSnmpAgent 3 }
106
osf OBJECT IDENTIFIER ::= { ucdSnmpAgent 4 }
107
ultrix OBJECT IDENTIFIER ::= { ucdSnmpAgent 5 }
108
netbsd1 OBJECT IDENTIFIER ::= { ucdSnmpAgent 7 }
109
freebsd OBJECT IDENTIFIER ::= { ucdSnmpAgent 8 }
110
irix OBJECT IDENTIFIER ::= { ucdSnmpAgent 9 }
111
linux OBJECT IDENTIFIER ::= { ucdSnmpAgent 10 }
112
bsdi OBJECT IDENTIFIER ::= { ucdSnmpAgent 11 }
113
openbsd OBJECT IDENTIFIER ::= { ucdSnmpAgent 12 }
114
unknown OBJECT IDENTIFIER ::= { ucdSnmpAgent 255 }
117
-- Define the Float Textual Convention
118
-- This definition was written by David Perkins.
121
Float ::= TEXTUAL-CONVENTION
124
"A single precision floating-point number. The semantics
125
and encoding are identical for type 'single' defined in
126
IEEE Standard for Binary Floating-Point,
127
ANSI/IEEE Std 754-1985.
128
The value is restricted to the BER serialization of
129
the following ASN.1 type:
130
FLOATTYPE ::= [120] IMPLICIT FloatType
131
(note: the value 120 is the sum of '30'h and '48'h)
132
The BER serialization of the length for values of
133
this type must use the definite length, short
136
For example, the BER serialization of value 123
137
of type FLOATTYPE is '9f780442f60000'h. (The tag
138
is '9f78'h; the length is '04'h; and the value is
139
'42f60000'h.) The BER serialization of value
140
'9f780442f60000'h of data type Opaque is
141
'44079f780442f60000'h. (The tag is '44'h; the length
142
is '07'h; and the value is '9f780442f60000'h."
143
SYNTAX Opaque (SIZE (7))
146
-- Process table checks
150
SYNTAX SEQUENCE OF PrEntry
151
MAX-ACCESS not-accessible
154
"A table containing information on running
155
programs/daemons configured for monitoring in the
156
snmpd.conf file of the agent. Processes violating the
157
number of running processes required by the agent's
158
configuration file are flagged with numerical and
164
MAX-ACCESS not-accessible
167
"An entry containing a process and its statistics."
171
PrEntry ::= SEQUENCE {
173
prNames DisplayString,
177
prErrorFlag Integer32,
178
prErrMessage DisplayString,
180
prErrFixCmd DisplayString
184
SYNTAX Integer32 (0..65535)
188
"Reference Index for each observed process."
196
"The process name we're counting/checking on."
204
"The minimum number of processes that should be
205
running. An error flag is generated if the number of
206
running processes is < the minimum."
214
"The maximum number of processes that should be
215
running. An error flag is generated if the number of
216
running processes is > the maximum."
224
"The number of current processes running with the name
228
prErrorFlag OBJECT-TYPE
233
"A Error flag to indicate trouble with a process. It
234
goes to 1 if there is an error, 0 if no error."
237
prErrMessage OBJECT-TYPE
242
"An error message describing the problem (if one exists)."
247
MAX-ACCESS read-write
250
"Setting this to one will try to fix the problem if
251
the agent has been configured with a script to call
252
to attempt to fix problems automatically using remote
256
prErrFixCmd OBJECT-TYPE
261
"The command that gets run when the prErrFix column is
268
SYNTAX SEQUENCE OF ExtEntry
269
MAX-ACCESS not-accessible
272
"A table of extensible commands returning output and
273
result codes. These commands are configured via the
274
agent's snmpd.conf file."
279
MAX-ACCESS not-accessible
282
"An entry containing an extensible script/program and its output."
286
ExtEntry ::= SEQUENCE {
288
extNames DisplayString,
289
extCommand DisplayString,
291
extOutput DisplayString,
293
extErrFixCmd DisplayString
297
SYNTAX Integer32 (0..65535)
301
"Reference Index for extensible scripts. Simply an
310
"A Short, one name description of the extensible command."
313
extCommand OBJECT-TYPE
318
"The command line to be executed."
321
extResult OBJECT-TYPE
326
"The result code (exit status) from the executed command."
329
extOutput OBJECT-TYPE
334
"The first line of output of the executed command."
337
extErrFix OBJECT-TYPE
339
MAX-ACCESS read-write
342
"Setting this to one will try to fix the problem if
343
the agent has been configured with a script to call
344
to attempt to fix problems automatically using remote
348
extErrFixCmd OBJECT-TYPE
353
"The command that gets run when the extErrFix column is
358
-- Memory usage/watch reporting.
359
-- Not supported on all systems!
360
-- See agent/mibgroup/ucd_snmp.h to see if its loaded for your architecture.
362
memory OBJECT IDENTIFIER ::= { ucdavis 4 }
369
"Bogus Index. This should always return the integer 0."
372
memErrorName OBJECT-TYPE
377
"Bogus Name. This should always return the string 'swap'."
380
memTotalSwap OBJECT-TYPE
385
"Total Swap Size configured for the host."
388
memAvailSwap OBJECT-TYPE
393
"Available Swap Space on the host."
396
memTotalReal OBJECT-TYPE
401
"Total Real/Physical Memory Size on the host."
404
memAvailReal OBJECT-TYPE
409
"Available Real/Physical Memory Space on the host."
412
memTotalSwapTXT OBJECT-TYPE
417
"Total virtual memory used by text."
420
memAvailSwapTXT OBJECT-TYPE
425
"Active virtual memory used by text."
428
memTotalRealTXT OBJECT-TYPE
433
"Total Real/Physical Memory Size used by text."
436
memAvailRealTXT OBJECT-TYPE
441
"Active Real/Physical Memory Space used by text."
444
memTotalFree OBJECT-TYPE
449
"Total Available Memory on the host"
452
memMinimumSwap OBJECT-TYPE
457
"Minimum amount of free swap required to be free
458
or else memErrorSwap is set to 1 and an error string is
459
returned memSwapErrorMsg."
462
memShared OBJECT-TYPE
467
"Total Shared Memory"
470
memBuffer OBJECT-TYPE
475
"Total Buffered Memory"
478
memCached OBJECT-TYPE
483
"Total Cached Memory"
486
memSwapError OBJECT-TYPE
491
"Error flag. 1 indicates very little swap space left"
494
memSwapErrorMsg OBJECT-TYPE
499
"Error message describing the Error Flag condition"
504
SYNTAX SEQUENCE OF DskEntry
505
MAX-ACCESS not-accessible
508
"Disk watching information. Partions to be watched
509
are configured by the snmpd.conf file of the agent."
514
MAX-ACCESS not-accessible
517
"An entry containing a disk and its statistics."
521
DskEntry ::= SEQUENCE {
523
dskPath DisplayString,
524
dskDevice DisplayString,
525
dskMinimum Integer32,
526
dskMinPercent Integer32,
530
dskPercent Integer32,
531
dskPercentNode Integer32,
532
dskErrorFlag Integer32,
533
dskErrorMsg DisplayString
537
SYNTAX Integer32 (0..65535)
541
"Integer reference number (row number) for the disk mib."
549
"Path where the disk is mounted."
552
dskDevice OBJECT-TYPE
557
"Path of the device for the partition"
560
dskMinimum OBJECT-TYPE
565
"Minimum space required on the disk (in kBytes) before the
566
errors are triggered. Either this or dskMinPercent is
567
configured via the agent's snmpd.conf file."
570
dskMinPercent OBJECT-TYPE
575
"Percentage of minimum space required on the disk before the
576
errors are triggered. Either this or dskMinimum is
577
configured via the agent's snmpd.conf file."
585
"Total size of the disk/partion (kBytes)"
593
"Available space on the disk"
601
"Used space on the disk"
604
dskPercent OBJECT-TYPE
609
"Percentage of space used on disk"
612
dskPercentNode OBJECT-TYPE
617
"Percentage of inodes used on disk"
620
dskErrorFlag OBJECT-TYPE
625
"Error flag signaling that the disk or partition is under
626
the minimum required space configured for it."
629
dskErrorMsg OBJECT-TYPE
634
"A text description providing a warning and the space left
639
SYNTAX SEQUENCE OF LaEntry
640
MAX-ACCESS not-accessible
643
"Load average information."
648
MAX-ACCESS not-accessible
651
"An entry containing a load average and its values."
655
LaEntry ::= SEQUENCE {
657
laNames DisplayString,
658
laLoad DisplayString,
659
laConfig DisplayString,
662
laErrorFlag Integer32,
663
laErrMessage DisplayString
667
SYNTAX Integer32 (0..3)
671
"reference index/row number for each observed loadave."
679
"The list of loadave names we're watching."
687
"The 1,5 and 10 minute load averages (one per row)."
695
"The watch point for load-averages to signal an
696
error. If the load averages rises above this value,
697
the laErrorFlag below is set."
700
laLoadInt OBJECT-TYPE
705
"The 1,5 and 10 minute load averages as an integer.
706
This is computed by taking the floating point
707
loadaverage value and multiplying by 100, then
708
converting the value to an integer."
711
laLoadFloat OBJECT-TYPE
716
"The 1,5 and 10 minute load averages as an opaquely
717
wrapped floating point number."
720
laErrorFlag OBJECT-TYPE
725
"A Error flag to indicate the load-average has crossed
726
its threshold value defined in the snmpd.conf file.
727
It is set to 1 if the threshold is crossed, 0 otherwise."
730
laErrMessage OBJECT-TYPE
735
"An error message describing the load-average and its
736
surpased watch-point value."
740
version OBJECT IDENTIFIER ::= { ucdavis 100 }
742
versionIndex OBJECT-TYPE
747
"Index to mib (always 0)"
750
versionTag OBJECT-TYPE
758
versionDate OBJECT-TYPE
763
"Date string from RCS keyword"
766
versionCDate OBJECT-TYPE
771
"Date string from ctime() "
774
versionIdent OBJECT-TYPE
779
"Id string from RCS keyword"
782
versionConfigureOptions OBJECT-TYPE
787
"Options passed to the configure script when this agent was built."
790
versionClearCache OBJECT-TYPE
792
MAX-ACCESS read-write
795
"Set to 1 to clear the exec cache, if enabled"
798
versionUpdateConfig OBJECT-TYPE
800
MAX-ACCESS read-write
803
"Set to 1 to read-read the config file(s)."
806
versionRestartAgent OBJECT-TYPE
808
MAX-ACCESS read-write
811
"Set to 1 to restart the agent."
814
versionDoDebugging OBJECT-TYPE
816
MAX-ACCESS read-write
819
"Set to 1 to turn debugging statements on in the agent or 0
824
snmperrs OBJECT IDENTIFIER ::= { ucdavis 101 }
826
snmperrIndex OBJECT-TYPE
831
"Bogus Index for snmperrs (always 0)."
834
snmperrNames OBJECT-TYPE
842
snmperrErrorFlag OBJECT-TYPE
847
"A Error flag to indicate trouble with the agent. It
848
goes to 1 if there is an error, 0 if no error."
851
snmperrErrMessage OBJECT-TYPE
856
"An error message describing the problem (if one exists)."
861
SYNTAX SEQUENCE OF MrEntry
862
MAX-ACCESS not-accessible
865
"A table displaying all the oid's registered by mib modules in
866
the agent. Since the agent is modular in nature, this lists
867
each module's OID it is responsible for and the name of the module"
872
MAX-ACCESS not-accessible
875
"An entry containing a registered mib oid."
876
INDEX { IMPLIED mrIndex }
879
MrEntry ::= SEQUENCE {
880
mrIndex OBJECT IDENTIFIER,
881
mrModuleName DisplayString
885
SYNTAX OBJECT IDENTIFIER
889
"The registry slot of a mibmodule."
892
mrModuleName OBJECT-TYPE
897
"The module name that registered this OID."
900
systemStats OBJECT IDENTIFIER ::= { ucdavis 11 }
907
"Reference Index for each observed systemStat (1)."
908
::= { systemStats 1 }
910
ssErrorName OBJECT-TYPE
915
"The list of systemStats names (vmstat) we're Counting."
916
::= { systemStats 2 }
923
"Amount of memory swapped in from disk (kB/s)."
924
::= { systemStats 3 }
926
ssSwapOut OBJECT-TYPE
931
"Amount of memory swapped to disk (kB/s)."
932
::= { systemStats 4 }
939
"Blocks sent to a block device (blocks/s)."
940
::= { systemStats 5 }
942
ssIOReceive OBJECT-TYPE
947
"Blocks received from a block device (blocks/s)."
948
::= { systemStats 6 }
950
ssSysInterrupts OBJECT-TYPE
955
"The number of interrupts per second, including the clock."
956
::= { systemStats 7 }
958
ssSysContext OBJECT-TYPE
963
"The number of context switches per second."
964
::= { systemStats 8 }
966
ssCpuUser OBJECT-TYPE
971
"percentages of user CPU time."
972
::= { systemStats 9 }
974
ssCpuSystem OBJECT-TYPE
979
"percentages of system CPU time."
980
::= { systemStats 10 }
982
ssCpuIdle OBJECT-TYPE
987
"percentages of idle CPU time."
988
::= { systemStats 11 }
990
-- The agent only implements those of the following counters that the
991
-- kernel supports! Don't expect all to be present.
993
ssCpuRawUser OBJECT-TYPE
999
::= { systemStats 50 }
1001
ssCpuRawNice OBJECT-TYPE
1003
MAX-ACCESS read-only
1007
::= { systemStats 51 }
1009
ssCpuRawSystem OBJECT-TYPE
1011
MAX-ACCESS read-only
1015
::= { systemStats 52 }
1017
ssCpuRawIdle OBJECT-TYPE
1019
MAX-ACCESS read-only
1023
::= { systemStats 53 }
1025
ssCpuRawWait OBJECT-TYPE
1027
MAX-ACCESS read-only
1030
"iowait CPU time. This is primarily a SysV thingie"
1031
::= { systemStats 54 }
1033
ssCpuRawKernel OBJECT-TYPE
1035
MAX-ACCESS read-only
1039
::= { systemStats 55 }
1041
ssCpuRawInterrupt OBJECT-TYPE
1043
MAX-ACCESS read-only
1046
"interruptlevel CPU time. This is primarily a BSD thingie"
1047
::= { systemStats 56 }
1049
ssIORawSent OBJECT-TYPE
1051
MAX-ACCESS read-only
1054
"Number of requests sent to a block device"
1055
::= { systemStats 57 }
1057
ssIORawReceived OBJECT-TYPE
1059
MAX-ACCESS read-only
1062
"Number of interrupts processed"
1063
::= { systemStats 58 }
1065
ssRawInterrupts OBJECT-TYPE
1067
MAX-ACCESS read-only
1070
"Number of requests received from a block device"
1071
::= { systemStats 59 }
1073
ssRawContexts OBJECT-TYPE
1075
MAX-ACCESS read-only
1078
"Number of context switches"
1079
::= { systemStats 60 }
1081
-- possibly used in the future:
1083
-- ssErrorFlag OBJECT-TYPE
1085
-- MAX-ACCESS read-only
1089
-- ::= { systemStats 100 }
1091
-- ssErrMessage OBJECT-TYPE
1092
-- SYNTAX DisplayString
1093
-- MAX-ACCESS read-only
1096
-- "Error message describing the errorflag condition."
1097
-- ::= { systemStats 101 }
1100
ucdTraps OBJECT IDENTIFIER ::= { ucdavis 251 }
1102
ucdStart NOTIFICATION-TYPE
1108
ucdShutdown NOTIFICATION-TYPE
1111
"This trap is sent when the agent terminates"
1115
-- File Table: monitor a list of files to check for a maximum size.
1118
fileTable OBJECT-TYPE
1119
SYNTAX SEQUENCE OF FileEntry
1120
MAX-ACCESS not-accessible
1123
"Table of monitored files."
1126
fileEntry OBJECT-TYPE
1128
MAX-ACCESS not-accessible
1135
FileEntry ::= SEQUENCE {
1136
fileIndex Integer32,
1137
fileName DisplayString,
1140
fileErrorFlag TruthValue,
1141
fileErrorMsg DisplayString
1144
fileIndex OBJECT-TYPE
1145
SYNTAX Integer32 (0..2147483647)
1146
MAX-ACCESS read-only
1152
fileName OBJECT-TYPE
1153
SYNTAX DisplayString
1154
MAX-ACCESS read-only
1160
fileSize OBJECT-TYPE
1163
MAX-ACCESS read-only
1172
MAX-ACCESS read-only
1175
"Limit of filesize (kB)"
1178
fileErrorFlag OBJECT-TYPE
1180
MAX-ACCESS read-only
1183
"Limit exceeded flag"
1184
::= { fileEntry 100 }
1186
fileErrorMsg OBJECT-TYPE
1187
SYNTAX DisplayString
1188
MAX-ACCESS read-only
1191
"Filesize error message"
1192
::= { fileEntry 101 }