--
-- %CopyrightBegin%
--
-- Copyright Ericsson AB 1997-2009. All Rights Reserved.
--
-- Licensed under the Apache License, Version 2.0 (the "License");
-- you may not use this file except in compliance with the License.
-- You may obtain a copy of the License at
--
-- http://www.apache.org/licenses/LICENSE-2.0
--
-- Unless required by applicable law or agreed to in writing, software
-- distributed under the License is distributed on an "AS IS" BASIS,
-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-- See the License for the specific language governing permissions and
-- limitations under the License.
--
-- %CopyrightEnd%
--
OTP-OS-MON-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE,
Counter32, Gauge32, Integer32, Unsigned32, Counter64
FROM SNMPv2-SMI
TEXTUAL-CONVENTION, DisplayString
FROM SNMPv2-TC
MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP
FROM SNMPv2-CONF
otpModules, otpApplications
FROM OTP-REG
erlNodeId
FROM OTP-MIB
;
otpOsMonModule MODULE-IDENTITY
LAST-UPDATED "0305090900Z"
ORGANIZATION "Ericsson"
CONTACT-INFO
"Contact: Erlang Support see license agreement for Erlang/OTP."
DESCRIPTION
"This MIB is part of the OTP MIB. It defines MIB objects
for the os_mon application in OTP."
REVISION "0508260900Z"
DESCRIPTION
"Removed dependeny on EVA."
REVISION "0305090900Z"
DESCRIPTION
"Changed CONTACT-INFO as it was outdated, made it more generic
to avoid such changes in the future."
REVISION "9807080900Z"
DESCRIPTION
"Changed MAX-ACCESS for diskDescr from not-accessible to
read-only."
REVISION "9801270900Z"
DESCRIPTION
"Changed erroneous name of this module to otpOsMonModule."
REVISION "9712010900Z"
DESCRIPTION
"Converted to v2 SMI and placed in the OTP tree."
REVISION "9608191700Z"
DESCRIPTION
"The initial revision of MIB module OTP-OS-MON-MIB."
::= { otpModules 4 }
OTPCounterBasedGauge64 ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The CounterBasedGauge64 type represents a non-negative
integer, which may increase or decrease, but shall never
exceed a maximum value, nor fall below a minimum value. The
maximum value can not be greater than 2^64-1
(18446744073709551615 decimal), and the minimum value can
not be smaller than 0. The value of a CounterBasedGauge64
has its maximum value whenever the information being modeled
is greater than or equal to its maximum value, and has its
minimum value whenever the information being modeled is
smaller than or equal to its minimum value. If the
information being modeled subsequently decreases below
(increases above) the maximum (minimum) value, the
CounterBasedGauge64 also decreases (increases).
Note that this TC is not strictly supported in SMIv2,
because the 'always increasing' and 'counter wrap' semantics
associated with the Counter64 base type are not preserved.
It is possible that management applications which rely
solely upon the (Counter64) ASN.1 tag to determine object
semantics will mistakenly operate upon objects of this type
as they would for Counter64 objects.
This textual convention represents a limited and short-term
solution, and may be deprecated as a long term solution is
defined and deployed to replace it."
SYNTAX Counter64
otpOsMonMIB OBJECT IDENTIFIER ::= { otpApplications 2 }
otpOsMonMIBConformance
OBJECT IDENTIFIER ::= { otpOsMonMIB 1 }
otpOsMonMIBObjects
OBJECT IDENTIFIER ::= { otpOsMonMIB 2 }
otpOsMonMIBAlarms
OBJECT IDENTIFIER ::= { otpOsMonMIB 4 }
otpOsMonMIBAlarmsV2
OBJECT IDENTIFIER ::= { otpOsMonMIBAlarms 0 }
-- Datatypes
-- Managed Objects
load OBJECT IDENTIFIER ::= { otpOsMonMIBObjects 1 }
disk OBJECT IDENTIFIER ::= { otpOsMonMIBObjects 2 }
loadMemorySystemWatermark OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Threshold in percent of the total available system
memory, which specifies how much memory can be allocated
by the system before an alarm is sent."
::= { load 1 }
loadMemoryErlProcWatermark OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Threshold in percent of the total available system
memory, which specifies how much memory can be allocated
by one Erlang process before an alarm is sent."
::= { load 2 }
loadTable OBJECT-TYPE
SYNTAX SEQUENCE OF LoadEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table with load and memory information
for each node."
::= { load 3 }
loadEntry OBJECT-TYPE
SYNTAX LoadEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row in the loadTable."
INDEX { loadErlNodeName }
::= { loadTable 1 }
LoadEntry ::= SEQUENCE {
loadErlNodeName DisplayString,
loadSystemTotalMemory Gauge32,
loadSystemUsedMemory Gauge32,
loadLargestErlProcess DisplayString,
loadLargestErlProcessUsedMemory Gauge32,
loadCpuLoad Integer32,
loadCpuLoad5 Integer32,
loadCpuLoad15 Integer32,
loadOsWordsize Unsigned32,
loadSystemTotalMemory64 OTPCounterBasedGauge64,
loadSystemUsedMemory64 OTPCounterBasedGauge64,
loadLargestErlProcessUsedMemory64 OTPCounterBasedGauge64
}
loadErlNodeName OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The name of the erlang node, e.g. erlnode@host1."
::= { loadEntry 1 }
loadSystemTotalMemory OBJECT-TYPE
SYNTAX Gauge32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of total memory in the system."
::= { loadEntry 2 }
loadSystemUsedMemory OBJECT-TYPE
SYNTAX Gauge32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of used memory."
::= { loadEntry 3 }
loadLargestErlProcess OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The process identifier (Pid) of the largest Erlang
process."
::= { loadEntry 4 }
loadLargestErlProcessUsedMemory OBJECT-TYPE
SYNTAX Gauge32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of memory used by the largest Erlang
process."
::= { loadEntry 5 }
loadCpuLoad OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The average load the last minute in percent of the CPU
where the Erlang node runs."
::= { loadEntry 6 }
loadCpuLoad5 OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The average load the last 5 minutes in percent of the CPU
where the Erlang node runs."
::= { loadEntry 7}
loadCpuLoad15 OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The average load the last 15 minutes in percent of the CPU
where the Erlang node runs."
::= { loadEntry 8}
loadOsWordsize OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The wordsize of the operating operating system."
::= { loadEntry 9 }
loadSystemTotalMemory64 OBJECT-TYPE
SYNTAX OTPCounterBasedGauge64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of total memory in the system for 64-bit operating system."
::= { loadEntry 10 }
loadSystemUsedMemory64 OBJECT-TYPE
SYNTAX OTPCounterBasedGauge64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of used memory for 64-bit operating system."
::= { loadEntry 11 }
loadLargestErlProcessUsedMemory64 OBJECT-TYPE
SYNTAX OTPCounterBasedGauge64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of memory used by the largest Erlang
process for 64-bit operating system.."
::= { loadEntry 12 }
diskAlmostFullThreshold OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Threshold in percent of the available disk space,
which specifies how much disk space can be used by
a disk or partition before an alarm is sent."
::= { disk 1 }
diskTable OBJECT-TYPE
SYNTAX SEQUENCE OF DiskEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table with all local disks or partitions on each
node."
::= { disk 2 }
diskEntry OBJECT-TYPE
SYNTAX DiskEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row in the diskTable."
INDEX { erlNodeId, diskId }
::= { diskTable 1 }
DiskEntry ::= SEQUENCE {
diskId Integer32,
diskDescr DisplayString,
diskKBytes Gauge32,
diskCapacity Integer32
}
diskId OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An integer that uniquely identifies the disk
or partition."
::= { diskEntry 1 }
diskDescr OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A string that identifies the disk or partition."
::= { diskEntry 2 }
diskKBytes OBJECT-TYPE
SYNTAX Gauge32
UNITS "kbytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of total disk/partition space. "
::= { diskEntry 3 }
diskCapacity OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"How much of the disk's/partition's total capacity has
been used, in percent."
::= { diskEntry 4 }
-- conformance information
otpOsMonMIBCompliances
OBJECT IDENTIFIER ::= { otpOsMonMIBConformance 1 }
otpOsMonMIBGroups
OBJECT IDENTIFIER ::= { otpOsMonMIBConformance 2 }
-- compliance statements
otpOsMonBasicCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for SNMPv2 entities which
implement the OTP-OS-MON-MIB."
MODULE -- this module
GROUP loadGroup
DESCRIPTION
"This group is mandatory for systems implementing the
load supervison functionality."
GROUP loadAlarmsGroup
DESCRIPTION
"This group is optional for systems implementing the
load supervison functionality."
GROUP diskGroup
DESCRIPTION
"This group is mandatory for system implementing the
disk supervison functionality."
GROUP diskAlarmsGroup
DESCRIPTION
"This group is optional for systems implementing the
disk supervison functionality."
::= { otpOsMonMIBCompliances 1 }
-- units of conformance
loadGroup OBJECT-GROUP
OBJECTS { loadMemorySystemWatermark,
loadMemoryErlProcWatermark,
loadSystemTotalMemory,
loadSystemUsedMemory,
loadLargestErlProcess,
loadLargestErlProcessUsedMemory,
loadCpuLoad,
loadCpuLoad5,
loadCpuLoad15,
loadOsWordsize,
loadSystemTotalMemory64,
loadSystemUsedMemory64,
loadLargestErlProcessUsedMemory64}
STATUS current
DESCRIPTION
"A collection of objects providing basic instrumentation
of the load of the OTP system."
::= { otpOsMonMIBGroups 1 }
diskGroup OBJECT-GROUP
OBJECTS { diskAlmostFullThreshold,
diskDescr,
diskKBytes,
diskCapacity }
STATUS current
DESCRIPTION
"A collection of objects providing basic instrumentation
of the disks in the OTP system."
::= { otpOsMonMIBGroups 3 }
END