This module contains a collection of YANG definitions for monitoring of platform components. Copyright (c) 2016-2017, 2019 by Ci...
Version: 2019-11-01
module Cisco-IOS-XE-platform-oper { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XE-platform-oper"; prefix platform-ios-xe-oper; import ietf-yang-types { prefix yang; } import cisco-semver { prefix cisco-semver; } organization "Cisco Systems, Inc."; contact "Cisco Systems, Inc. Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 Tel: +1 1800 553-NETS E-mail: cs-yang@cisco.com"; description "This module contains a collection of YANG definitions for monitoring of platform components. Copyright (c) 2016-2017, 2019 by Cisco Systems, Inc. All rights reserved."; revision "2019-11-01" { description "Added status description field"; reference "2.3.0"; } revision "2019-05-01" { description "- Added component status, temperature alarm data and new leaves to component state. - Added semantic version"; reference "2.2.0"; } revision "2018-10-29" { description "Cleaned up spelling errors in descriptions."; reference "2.1.0"; } revision "2017-10-11" { description "Enumeration name fix"; reference "2.0.0"; } revision "2017-02-06" { description "Initial revision"; reference "1.0.0"; } cisco-semver:module-version "2.3.0"; cisco-semver:module-version "2.2.0"; cisco-semver:module-version "2.1.0"; cisco-semver:module-version "2.0.0"; cisco-semver:module-version "1.0.0"; typedef platform-comp-type { type enumeration { enum "comp-chassis" { value 0; } enum "comp-backplane" { value 1; } enum "comp-power-supply" { value 2; } enum "comp-fan" { value 3; } enum "comp-sensor" { value 4; } enum "comp-module" { value 5; } enum "comp-linecard" { value 6; } enum "comp-port" { value 7; } enum "comp-cpu" { value 8; } enum "comp-operating-system" { value 9; } enum "comp-optical-channel" { value 10; } enum "comp-container" { value 11; } enum "comp-fru" { value 12; } enum "comp-controller-card" { value 13; } enum "comp-transceiver" { value 14; } } description "Component Type"; } typedef platform-comp-status { type enumeration { enum "status-active" { value 0; } enum "status-inactive" { value 1; } enum "status-disabled" { value 2; } } description "Component status"; } typedef temp-alarm-severity { type enumeration { enum "severity-unknown" { value 0; } enum "severity-minor" { value 1; } enum "severity-major" { value 2; } enum "severity-critical" { value 3; } enum "severity-warning" { value 4; } } description "Temperature Alarm Severity"; } typedef status-description { type enumeration { enum "status-desc-ok" { value 0; description "Component in working state"; } enum "status-desc-thermal-failure" { value 1; description "Thermal failure"; } enum "status-desc-fan-failure" { value 2; description "Fan failure"; } enum "status-desc-supply-failure" { value 3; description "Power Supply failure"; } enum "status-desc-no-response" { value 4; description "No response from component"; } enum "status-desc-no-input" { value 5; description "Component has no input"; } enum "status-desc-bad-power" { value 6; description "Component has bad power"; } enum "status-desc-overload" { value 7; description "Component is overloaded"; } enum "status-desc-disabled" { value 8; description "Component is disabled"; } enum "status-desc-vacant" { value 9; description "Component slot is vacant"; } enum "status-desc-standby" { value 10; description "Component is in standby or redundant state"; } enum "status-desc-bad-cookie" { value 11; description "Component failure - bad cookie"; } enum "status-desc-invalid" { value 12; description "Component in invalid state"; } } description "Detailed status"; } typedef platform-prop-value-type { type enumeration { enum "property-string" { value 0; } enum "property-boolean" { value 1; } enum "property-int64" { value 2; } enum "property-uint64" { value 3; } enum "property-decimal64" { value 4; } } description "Property value type"; } container components { config false; description "Enclosing container for the components in the system"; list component { key "cname"; description "List of components, keyed by component name"; leaf cname { type string; description "References component name"; } container state { description "Operational state data for each component"; leaf type { type platform-comp-type; description "Type of component as identified by the system"; } leaf id { type string; description "Unique identifier assigned to the component by the system"; } leaf description { type string; description "System-supplied description of the component"; } leaf mfg-name { type string; description "System-supplied identifier for the manufacturer of the component. This data is particularly useful when a component manufacturer is different than the overall device vendor"; } leaf version { type string; description "System-defined version string for a hardware, firmware, or software component"; } leaf serial-no { type string; description "System-assigned serial number of the component"; } leaf part-no { type string; description "System-assigned part number for the component. This should be present in particular if the component is also an FRU (field replaceable unit)"; } container temp { description "Temperature in degrees Celsius of the component. Values include the instantaneous, average, minimum, and maximum statistics. If average/minimum/maximum statistics are not supported, the target is expected to just supply the instant value"; leaf temp-instant { type decimal64 { fraction-digits 2; } description "Instantaneous temperature value of a component"; } leaf temp-avg { type decimal64 { fraction-digits 2; } description "Arithmetic mean value of the statistic over a sampling period"; } leaf temp-max { type decimal64 { fraction-digits 2; } description "High water mark value of the statistic over a sampling period"; } leaf temp-min { type decimal64 { fraction-digits 2; } description "Low water mark value of the statistic over a sampling period"; } } // container temp leaf location { type string; description "Component's Locations"; } leaf empty { type boolean; description "If true, the component is empty"; } leaf mfg-date { type yang:date-and-time; description "Manufacturing date of the component"; } leaf firmware-ver { type string; description "Firmware version"; } leaf removable { type boolean; description "If true, the component is removable"; } leaf status { type platform-comp-status; description "Operational status of a component"; } container comp-alarm-data { description "Temperature alarm data of a component"; leaf alarm-status { type boolean; description "Alarm status"; } leaf alarm-threshold { type uint32; description "Threshold value above which system generates an alarm"; } leaf severity { type temp-alarm-severity; description "Alarm Severity"; } } // container comp-alarm-data leaf parent { type string; description "Parent of a component"; } container comp-mem-data { description "Available and utilized memory of a component"; leaf mem-available { type uint64; units "bytes"; description "Available memory for a component"; } leaf mem-utilized { type uint64; units "bytes"; description "Utilized memory of a component"; } } // container comp-mem-data leaf alloc-pwr { type uint32; units "watts"; description "Power allocated to a component"; } leaf used-pwr { type uint32; units "watts"; description "Power drawn by a component"; } leaf status-desc { type status-description; description "Operational status description"; } } // container state container platform-properties { description "Platform component properties"; list platform-property { key "name"; description "List of platform component properties"; leaf name { type string; description "Property name"; } container value { description "Property value"; choice property-value-choice { description "Value choice"; leaf string { type string; description "String property value"; } leaf boolean { type boolean; description "Boolean property value"; } leaf intsixfour { type int64; description "Integer64 property value"; } leaf uintsixfour { type uint64; description "Unsigned integer64 property value"; } leaf decimal { type decimal64 { fraction-digits 2; } description "Decimal64 property value"; } } // choice property-value-choice } // container value leaf configurable { type boolean; description "Indication of whether the property is user-configurable"; } } // list platform-property } // container platform-properties container platform-subcomponents { description "Platform subcomponents"; list platform-subcomponent { key "name"; description "List of platform subcomponents"; leaf name { type string; description "Subcomponent name"; } } // list platform-subcomponent } // container platform-subcomponents } // list component } // container components } // module Cisco-IOS-XE-platform-oper
© 2023 YumaWorks, Inc. All rights reserved.