-- -- %CopyrightBegin% -- -- Copyright Ericsson AB 1997-2009. All Rights Reserved. -- -- The contents of this file are subject to the Erlang Public License, -- Version 1.1, (the "License"); you may not use this file except in -- compliance with the License. You should have received a copy of the -- Erlang Public License along with this software. If not, it can be -- retrieved online at http://www.erlang.org/. -- -- Software distributed under the License is distributed on an "AS IS" -- basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See -- the License for the specific language governing rights 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