-- MIB generated by miftomib version 1.0a

INTELCORPORATIONSERVERHEALTH-MIB DEFINITIONS ::= BEGIN

-- This component allows monitoring the health status ofa server.

IMPORTS
	TRAP-TYPE FROM RFC-1215
    OBJECT-TYPE
    FROM RFC-1212
    enterprises
    FROM RFC1155-SMI
    DisplayString
    FROM RFC1213-MIB;

DmiInteger			::= INTEGER
DmiDisplaystring	::= DisplayString
DmiDateX				::= OCTET STRING (SIZE (28))
DmiComponentIndex	::= INTEGER

intel               	OBJECT IDENTIFIER ::= {enterprises 343}
products            	OBJECT IDENTIFIER ::= {intel 2}
server-management    	OBJECT IDENTIFIER ::= {products 10}
software   				OBJECT IDENTIFIER ::= {server-management 3}
sha                     OBJECT IDENTIFIER ::= {software 2}
dmtfGroups          	OBJECT IDENTIFIER ::= {sha 1}


SComponentid ::= SEQUENCE {
	a1Manufacturer                          	DmiDisplaystring,
	a1Product                               	DmiDisplaystring,
	a1Version                               	DmiDisplaystring,
	a1SerialNumber                          	DmiDisplaystring,
	a1Installation                          	DmiDateX,
	a1Verify                                	DmiInteger
}

tComponentid OBJECT-TYPE
	SYNTAX		SEQUENCE OF SComponentid
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	"This group defines the attributes common to all components.This
group is required."
	::= {dmtfGroups 1}

eComponentid OBJECT-TYPE
	SYNTAX		SComponentid
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	INDEX		{DmiComponentIndex}
	::= {tComponentid 1}

a1Manufacturer OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"Manufacturer of this software."
	::= {eComponentid 1}

a1Product OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"Product name for this software."
	::= {eComponentid 2}

a1Version OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"Version number of this system."
	::= {eComponentid 3}

a1SerialNumber OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"Serial number for this system."
	::= {eComponentid 4}

a1Installation OBJECT-TYPE
	SYNTAX		DmiDateX
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The time and date when this component was installed."
	::= {eComponentid 5}

a1Verify OBJECT-TYPE
	SYNTAX		INTEGER {
		vAnErrorOccurredCheckStatusCode         	(0),
		vThisComponentDoesNotExist              	(1),
		vVerificationIsNotSupported             	(2),
		vReserved                               	(3),
		vThisComponentExistsButTheFunctionalityI	(4),
		vThisComponentExistsButTheFunctionality1	(5),
		vThisComponentExistsAndIsNotFunctioningC	(6),
		vThisComponentExistsAndIsFunctioningCorr	(7)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"A code that provides a level of verification that the component
is still installed and working."
	::= {eComponentid 6}

SServerHealthContributionTable ::= SEQUENCE {
	a2ContributionTableIndex                	DmiInteger,
	a2Component                             	DmiDisplaystring,
	a2Group                                 	DmiDisplaystring,
	a2StatusStore                           	DmiInteger,
	a2LocalIndexAttributeIdToStoreGroup     	DmiInteger,
	a2HealthAttributeId                     	DmiInteger,
	a2Contribution                          	DmiInteger,
	a2UpdateThroughPolling                  	DmiInteger
}

tServerHealthContributionTable OBJECT-TYPE
	SYNTAX		SEQUENCE OF SServerHealthContributionTable
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	"The groups that may contribute to the decision of the server
health"
	::= {dmtfGroups 2}

eServerHealthContributionTable OBJECT-TYPE
	SYNTAX		SServerHealthContributionTable
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	INDEX		{DmiComponentIndex, a2ContributionTableIndex}
	::= {tServerHealthContributionTable 1}

a2ContributionTableIndex OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The index to identify each entry in the Server Health Contributi
n table "
	::= {eServerHealthContributionTable 1}

a2Component OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"the contributing component name"
	::= {eServerHealthContributionTable 2}

a2Group OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The class name of the group that may contribute to the decision
of the server health"
	::= {eServerHealthContributionTable 3}

a2StatusStore OBJECT-TYPE
	SYNTAX		INTEGER {
		vLocal                                  	(0),
		vOperationalState                       	(1),
		vErrorControl                           	(2)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The flag to indicate where the health status attribute is
stored.  The health status for the instance of this group can be stored in
one of the following groups: 1. locally in the same group; 2. in the operational
state group Current Error Status    attribute for DMTF group; 3. in the Error
Control group Error Status attribute    for Intel group. "
	::= {eServerHealthContributionTable 4}

a2LocalIndexAttributeIdToStoreGroup OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The id of the contributing group's attribute that stores
the instance of the Operational State group table or the Error Control Group
table. This instance stores the health status.If the health status is stored
locally in the contributing group, this value will be set to zero "
	::= {eServerHealthContributionTable 5}

a2HealthAttributeId OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The id of the attribute to check for health. This attribute
locates in the group that is indicated in the Status Store attribute.  If
this is a local attribute, it should have the same type as the the operational
status group Current Error Status attribute.  In this case, the attribute
value will have a one to one mapping to the health status type. If not the
same type, the value of this attribute is 0. If this is the Error Control
group Error Status attribute, the Health Agent will map OK value to OK s"
	::= {eServerHealthContributionTable 6}

a2Contribution OBJECT-TYPE
	SYNTAX		INTEGER {
		vFalse                                  	(0),
		vTrue                                   	(1)
	}
	ACCESS		read-write
	STATUS		mandatory
	DESCRIPTION	"Is this group going to contribute to the decision of the
server health? 1 for Yes, 0 for No "
	::= {eServerHealthContributionTable 7}

a2UpdateThroughPolling OBJECT-TYPE
	SYNTAX		INTEGER {
		vFalse                                  	(0),
		vTrue                                   	(1)
	}
	ACCESS		read-write
	STATUS		mandatory
	DESCRIPTION	"This attribute is a boolean indicating if the Server Health
Agent should update the health status of this group through polling in addition
to DMI indication.  If not through polling, the updatewill be done through
DMI indication only. The value 1 means Yes, 0 means No. By default, the polling
is turned off."
	::= {eServerHealthContributionTable 8}

SServerHealthFilterTable ::= SEQUENCE {
	a3FilterTableIndex                      	DmiInteger,
	a3Component                             	DmiDisplaystring,
	a3Group                                 	DmiDisplaystring
}

tServerHealthFilterTable OBJECT-TYPE
	SYNTAX		SEQUENCE OF SServerHealthFilterTable
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	"the (component, group) that will not contribute to the server
health. "
	::= {dmtfGroups 3}

eServerHealthFilterTable OBJECT-TYPE
	SYNTAX		SServerHealthFilterTable
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	INDEX		{DmiComponentIndex, a3FilterTableIndex}
	::= {tServerHealthFilterTable 1}

a3FilterTableIndex OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The index to identify each entry in the Server Health Filter
table "
	::= {eServerHealthFilterTable 1}

a3Component OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"the filter's component name"
	::= {eServerHealthFilterTable 2}

a3Group OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"the filter's group class string.  If the value is *, all
groups of this component will be filtered."
	::= {eServerHealthFilterTable 3}

SServerHealthStatus ::= SEQUENCE {
	a4Status                                	DmiInteger,
	a4StatusInInteger                       	DmiInteger,
	a4PollInterval                          	DmiInteger
}

tServerHealthStatus OBJECT-TYPE
	SYNTAX		SEQUENCE OF SServerHealthStatus
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	"Status of server wellness."
	::= {dmtfGroups 4}

eServerHealthStatus OBJECT-TYPE
	SYNTAX		SServerHealthStatus
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	INDEX		{DmiComponentIndex}
	::= {tServerHealthStatus 1}

a4Status OBJECT-TYPE
	SYNTAX		INTEGER {
		vOther                                  	(1),
		vUnknown                                	(2),
		vOk                                     	(4),
		vNon-critical                           	(8),
		vCritical                               	(16),
		vNon-recoverable                        	(32)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"This attribute indicates whether the server is healthy or
not. Its type is an enumeration. For application which doesn't support DMI
enumeration type, it can use the next attribute, Status in Integer, which
stores the status in integer form"
	::= {eServerHealthStatus 1}

a4StatusInInteger OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"This attribute indicates whether the server is healthy or
not.  Since this instrumentation needs to support LDSM DCA which doesn't
support enum type, the attribute type here is integer with the following
meaning: 0x001 - Other 0x002 - Unknown 0x004 - OK 0x008 - Non-Critical 0x010
- Critical 0x020 - Non-Recoverable "
	::= {eServerHealthStatus 2}

a4PollInterval OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-write
	STATUS		mandatory
	DESCRIPTION	"This attribute is the Server Health Agent's polling interval
of those CI group's status when the Update Through Polling attribute in the
Server Health Contribution group is set to true for those groups.  The unit
of this attribute is in minute "
	::= {eServerHealthStatus 3}

SEventGenerationForServerHealthStatus ::= SEQUENCE {
	a5EventType                             	DmiInteger,
	a5EventSeverity                         	DmiInteger,
	a5IsEventState-based                    	DmiInteger,
	a5EventStateKey                         	DmiInteger,
	a5AssociatedGroup                       	DmiDisplaystring,
	a5EventSystem                           	DmiInteger,
	a5EventSubsystem                        	DmiInteger,
	a5IsInstanceDataPresent                 	DmiInteger,
	a5EventMessage                          	DmiDisplaystring
}

tEventGenerationForServerHealthStatus OBJECT-TYPE
	SYNTAX		SEQUENCE OF SEventGenerationForServerHealthStatus
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	::= {dmtfGroups 5}

eEventGenerationForServerHealthStatus OBJECT-TYPE
	SYNTAX		SEventGenerationForServerHealthStatus
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	INDEX		{DmiComponentIndex, a5AssociatedGroup}
	::= {tEventGenerationForServerHealthStatus 1}

a5EventType OBJECT-TYPE
	SYNTAX		INTEGER {
		vServerOk                               	(4),
		vServerNon-critical                     	(8),
		vServerCritical                         	(16),
		vServerNon-recoverable                  	(32),
		vServerHealthDetailChanged              	(48),
		vServerHealthDetailRefresh              	(64)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The type of event that has occurred."
	::= {eEventGenerationForServerHealthStatus 1}

a5EventSeverity OBJECT-TYPE
	SYNTAX		INTEGER {
		vMonitor                                	(1),
		vInformation                            	(2),
		vOk                                     	(4),
		vNon-critical                           	(8),
		vCritical                               	(16),
		vNon-recoverable                        	(32)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The severity of this event."
	::= {eEventGenerationForServerHealthStatus 2}

a5IsEventState-based OBJECT-TYPE
	SYNTAX		INTEGER {
		vFalse                                  	(0),
		vTrue                                   	(1)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The value of this attributedetermines whether the Event being
reportedis a state-based Event or not. If the valueof this attribute is TRUE
then the Event isstate-based. Otherwise the Event is notstate-based."
	::= {eEventGenerationForServerHealthStatus 3}

a5EventStateKey OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"A unique, single integer key into the EventState group if
this is a state-based Event.If this is not a state-based Event then thisthis
attribute's value is not defined."
	::= {eEventGenerationForServerHealthStatus 4}

a5AssociatedGroup OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The class name of the group that is associatedwith the events
defined in this EventGeneration group."
	::= {eEventGenerationForServerHealthStatus 5}

a5EventSystem OBJECT-TYPE
	SYNTAX		INTEGER {
		vOther                                  	(0),
		vUnknown                                	(1)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The major functional aspect of the productcausing the fault."
	::= {eEventGenerationForServerHealthStatus 6}

a5EventSubsystem OBJECT-TYPE
	SYNTAX		INTEGER {
		vOther                                  	(0),
		vUnknown                                	(1)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The minor functional aspect of the productcausing the fault."
	::= {eEventGenerationForServerHealthStatus 7}

a5IsInstanceDataPresent OBJECT-TYPE
	SYNTAX		INTEGER {
		vFalse                                  	(0),
		vTrue                                   	(1)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"Indicates whether the second event block containsinstance-specif
c data."
	::= {eEventGenerationForServerHealthStatus 9}

a5EventMessage OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"Auxillary information releated to the eventThis text contains
the name of the Probe"
	::= {eEventGenerationForServerHealthStatus 10}

SServerHealthDetail ::= SEQUENCE {
	a6HealthInstanceIndex                   	DmiInteger,
	a6Component                             	DmiDisplaystring,
	a6Group                                 	DmiDisplaystring,
	a6InstancePath                          	DmiDisplaystring,
	a6LastEventType                         	DmiInteger,
	a6Status                                	DmiInteger
}

tServerHealthDetail OBJECT-TYPE
	SYNTAX		SEQUENCE OF SServerHealthDetail
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	"the health detail of server.  This group consists of a table
of row with information on the associated unhealthy group, instance, associated
attribute, and status of that attribute"
	::= {dmtfGroups 6}

eServerHealthDetail OBJECT-TYPE
	SYNTAX		SServerHealthDetail
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	INDEX		{DmiComponentIndex, a6HealthInstanceIndex}
	::= {tServerHealthDetail 1}

a6HealthInstanceIndex OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The index to identify each entry in the Server Health Detail
table "
	::= {eServerHealthDetail 1}

a6Component OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The name of the unhealthy component that is associated"
	::= {eServerHealthDetail 2}

a6Group OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The class name of the unhealthy group that is associated"
	::= {eServerHealthDetail 3}

a6InstancePath OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The path to uniquely identifies the unhealthy instance that
cause the error. The format for non scalar group is: componentID|groupID|attribu
eID1=attributeValue+...+attributeIDn=attributeValue where attributeID1,...,a
tributeIDn are the attributes that form the key to the group. For example,
to uniquely identify the baseboard component, Physical Container Global Table
group, Container Index attribute with value 1, the string to represent this
instance is 7|64|9='1' For example, to uniquely identify "
	::= {eServerHealthDetail 4}

a6LastEventType OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The type of last event that causes the unhealthy condition.
The attribute type value zero means UNKONWN"
	::= {eServerHealthDetail 5}

a6Status OBJECT-TYPE
	SYNTAX		INTEGER {
		vOther                                	(1),
		vUnknown                            	(2),
		vOk                                     	(4),
		vNon-critical                           	(8),
		vCritical                               	(16),
		vNon-recoverable                        	(32)
	}
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"This attribute indicates the status of this unhealthy instance.
"
	::= {eServerHealthDetail 6}

SMiftomib ::= SEQUENCE {
	a99MibName                              	DmiDisplaystring,
	a99MibOid                               	DmiDisplaystring,
	a99DisableTrap                          	DmiInteger
}

tMiftomib OBJECT-TYPE
	SYNTAX		SEQUENCE OF SMiftomib
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	"This group defines attributes required for DMI to SNMP translati
n."
	::= {dmtfGroups 99}

eMiftomib OBJECT-TYPE
	SYNTAX		SMiftomib
	ACCESS		not-accessible
	STATUS		mandatory
	DESCRIPTION	""
	INDEX		{DmiComponentIndex}
	::= {tMiftomib 1}

a99MibName OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The MIB name that defines this MIF"
	::= {eMiftomib 1}

a99MibOid OBJECT-TYPE
	SYNTAX		DmiDisplaystring
	ACCESS		read-only
	STATUS		mandatory
	DESCRIPTION	"The MIB OID that corresponds to this MIF"
	::= {eMiftomib 2}

a99DisableTrap OBJECT-TYPE
	SYNTAX		DmiInteger
	ACCESS		read-write
	STATUS		mandatory
	DESCRIPTION	"This attribute can be changed to disable sending oftraps
from this component"
	::= {eMiftomib 3}

--
-- Trap definitions - not generated by MIFTOMIB tool
--

trap1ForServerHealthStatus TRAP-TYPE
    ENTERPRISE eEventGenerationForServerHealthStatus
    VARIABLES  {
	a5EventType,
	a5EventSeverity,
	a5IsEventState-based,
	a5EventStateKey,
	a5AssociatedGroup,
	a5EventSystem,
	a5EventSubsystem,
	a5IsInstanceDataPresent,
	a5EventMessage
       }

    DESCRIPTION "Server OK"

    ::= 4

trap2ForServerHealthStatus TRAP-TYPE
    ENTERPRISE eEventGenerationForServerHealthStatus
    VARIABLES  {
	a5EventType,
	a5EventSeverity,
	a5IsEventState-based,
	a5EventStateKey,
	a5AssociatedGroup,
	a5EventSystem,
	a5EventSubsystem,
	a5IsInstanceDataPresent,
	a5EventMessage
       }

    DESCRIPTION "Server Non-Critical"

    ::= 8

trap3ForServerHealthStatus TRAP-TYPE
    ENTERPRISE eEventGenerationForServerHealthStatus
    VARIABLES  {
	a5EventType,
	a5EventSeverity,
	a5IsEventState-based,
	a5EventStateKey,
	a5AssociatedGroup,
	a5EventSystem,
	a5EventSubsystem,
	a5IsInstanceDataPresent,
	a5EventMessage
       }

    DESCRIPTION "Server Critical"

    ::= 16

trap4ForServerHealthStatus TRAP-TYPE
    ENTERPRISE eEventGenerationForServerHealthStatus
    VARIABLES  {
	a5EventType,
	a5EventSeverity,
	a5IsEventState-based,
	a5EventStateKey,
	a5AssociatedGroup,
	a5EventSystem,
	a5EventSubsystem,
	a5IsInstanceDataPresent,
	a5EventMessage
       }

    DESCRIPTION "Server Non-Recoverable"

    ::= 32

trap5ForServerHealthStatus TRAP-TYPE
    ENTERPRISE eEventGenerationForServerHealthStatus
    VARIABLES  {
	a5EventType,
	a5EventSeverity,
	a5IsEventState-based,
	a5EventStateKey,
	a5AssociatedGroup,
	a5EventSystem,
	a5EventSubsystem,
	a5IsInstanceDataPresent,
	a5EventMessage
       }

    DESCRIPTION "Server Health Detail Changed"

    ::= 48

trap6ForServerHealthStatus TRAP-TYPE
    ENTERPRISE eEventGenerationForServerHealthStatus
    VARIABLES  {
	a5EventType,
	a5EventSeverity,
	a5IsEventState-based,
	a5EventStateKey,
	a5AssociatedGroup,
	a5EventSystem,
	a5EventSubsystem,
	a5IsInstanceDataPresent,
	a5EventMessage
       }

    DESCRIPTION "Server Health Detail Refresh"

    ::= 64

END
